{"content":"[dev-journal] assist-base-service WS-D bundle (commit bf9cb5b, branch feat/bundle): completed the REQ-D-17 admin surface. API (all behind the existing admin bearer middleware): GET/POST /v1/admin/bundle/plans and PUT /v1/admin/bundle/plans/:planId (CNY-only validation, duplicate-planId rejection, full-edit replace; open orders keep their creation snapshot so price edits never move a pending payment), GET /v1/admin/bundle/orders with status/account/date filters and cursor pagination including the Alipay trade_no, GET /v1/admin/bundle/revenue/daily for credited CNY revenue per UTC day. The embedded admin SPA gained Bundle Plans and Bundle Orders pages (create form, per-row edit+save, on/off-sale switch driving AC-D-1, revenue-by-day table, filter toolbar, paged order list) plus a Partner Egress IPs panel on the dashboard rendering the REQ-D-6 counters with the >200/day alert flag; the panel fails soft when the endpoint is absent. node --check on app.js clean, go build + package tests green.","contentType":"text/plain;utf-8","attachments":[],"quotePin":""}