| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| admin | ||
| ai | ||
| assistant | ||
| auth | ||
| clinical-gap | ||
| facts | ||
| mcp | ||
| patient | ||
| persona | ||
| plan | ||
| plan-aggregate | ||
| realtime-coach | ||
| sync | ||
| weixin-aibot |
执行结果回调(opt-in,宿主配 callbackUrl 才投递):
- Host 加 callbackUrl + callbackSecrets(存原文,PAC 签名用);迁移加两列。
- ExecutionService.submit 提交后入 execution-callback 队列(6 次退避重试,死信可见)。
- ExecutionCallbackService:查 execution→plan→patient 拼 payload,HMAC-SHA256("{ts}.{body}")
签名(与 push 入站同配方),fetch+8s 超时,非 2xx/超时抛错交 BullMQ 重试;jobId=executionId 幂等。
- 凭据页新增「执行结果回执」区:callbackUrl 输入 + Callback Secrets(add/rotate/grace/删),
suffix 用 sha256 指纹不回显原文。对接文档同步。
顺手修 push 密钥存储 bug:
- create/rotate 原本存 scrypt 哈希,但 HmacVerifier 把它当原文做 HMAC key → 宿主拿明文、
PAC 拿哈希,两边 key 不一致,push 验签永远过不了。改为存原文(对齐 seed 与 verifier 预期)。
- 本地实测:轮换后用返回的明文签名 → 验签通过;错误签名 → 10106 拒绝。
修凭据页「刷新即整页重载」:
- useHostAdmin.refresh 一进来就切 loading,父组件把整页换成占位、卸载 HostAdminApp,
连带把"仅显示一次"的明文 secret 弹窗刷没(来不及复制)。改 stale-while-revalidate:
已有数据不切 loading,旧数据留屏后台重取。
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| admin | Loading commit data... | |
| ai | Loading commit data... | |
| assistant | Loading commit data... | |
| auth | Loading commit data... | |
| clinical-gap | Loading commit data... | |
| facts | Loading commit data... | |
| mcp | Loading commit data... | |
| patient | Loading commit data... | |
| persona | Loading commit data... | |
| plan | Loading commit data... | |
| plan-aggregate | Loading commit data... | |
| realtime-coach | Loading commit data... | |
| sync | Loading commit data... | |
| weixin-aibot | Loading commit data... |