# 2026-05-18 reconcile host-scope reaccept

目标：复验 latest code 中 reconcile_runs host 维度收口后的真实宿主链路。

控制面
- 代码：当前工作树（含 reconcile_runs.host_id 迁移与 host-scoped 查询）
- 临时 CRM：`http://127.0.0.1:18100`
- 宿主：`http://127.0.0.1:18087`
- pack：`/home/long/project/sub2api-cn-relay-manager/packs/openai-cn-pack`
- provider：`openai-zhongzhuan`

产物
- self_service：`artifacts/real-host-acceptance/20260518_reconcile_hostscope_self_service/`
- subscription：`artifacts/real-host-acceptance/20260518_reconcile_hostscope_subscription/`

关键结果
- self_service import：`05-import.json`
  - `batch_status=succeeded`
  - `access_status=self_service_ready`
  - `gateway.status_code=200`
- subscription import：`05-import.json`
  - `batch_status=succeeded`
  - `access_status=subscription_ready`
  - `gateway.status_code=200`
- 两套验收都补充了 `host_id` 显式查询的：
  - `07-access-status.json`
  - `08-provider-status.json`
  - `08a-provider-resources.json`
- 两套验收都补充了 reconcile 与 batch detail：
  - `09-reconcile.json`
  - `10-batch-detail.json`
  - `11-rollback.json`

说明
- 本轮真实宿主只有 redeploy host (`18087`) 的可复用管理员/普通用户凭据，因此 self_service 与 subscription 复验都落在同一宿主上；跨宿主隔离的直接证明来自新增的 store/provision 单元与集成测试。
- subscription 的 `08-provider-status.json` / `10-batch-detail.json` 会看到同 host+provider 既有 reconcile 历史，这是当前“provider@host 运行时历史”语义，不是跨宿主串台。
