10 Commits
Author SHA1 Message Date
lovefyfandClaude Fable 5 5ebef45b1d feat: SSE 放行 touch.workflow——参与人+admin 可见性(经任务服务归属端口)
I6 把 touch.workflow. 从可订阅集摘出去,理由是**当时没有规则**:形状一过就直接进订阅集,
而鉴权分支只覆盖 touch.task./stream.task.,任何登录用户订 touch.workflow.<任意 id> 都能收
别人流程的推送。N3 的引擎每次推进都发 touch.workflow.<instanceId>,规则也定了:参与人
(节点 ownerSub)/审批人(approverSub)/admin。规则到位,故放回来。

- workflow-access.ts:与 task-access 同形的 HTTP 口——服务账号 token、3s 超时、非 200
  一律 false 并告警(失败关闭)。打的是任务侧新加的 /workflow/:id/access。
- hub:SUBSCRIBABLE 收回 touch.workflow.,subscribe 补上对应鉴权分支——放形状与补鉴权
  必须同一次改动,只放形状就是把 I6 原样退回去。admin 旁路(全可见,也免掉白跑的往返)。
- 两口分开而不是复用一口:任务问的是单张单的归属,工作流问的是实例**定义里**的节点归属。
- app:两口共用同一个 token provider,缓存只此一份。

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-13 21:07:47 +08:00
lovefyfandClaude Opus 4.8 9a02094281 fix: 终审修复——SSE 鉴权 401/503 分类、touch.workflow 默认拒、/subscribe 非数组 422
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-08-13 14:26:48 +08:00
lovefyfandClaude Opus 4.8 203815d6a2 test: 代理 traceparent 补发/不覆盖断言
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-08-13 12:32:59 +08:00
lovefyf e9fc35e605 fix: SSE 订阅——形状预检先于变更、连接归属校验、task-access 超时与告警 2026-08-13 12:11:05 +08:00
lovefyf d308104c0b feat: 网关 SSE 推送中心——按会话过滤扇出、订阅授权、Last-Event-ID 短窗回放、心跳 2026-08-13 11:53:06 +08:00
lovefyfandClaude Opus 5 41d58a9bb9 fix: 终审修复——网关代理主机不可位移(堵 SSRF/令牌外泄)+onError 统一错误形状
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-13 07:59:30 +08:00
lovefyf ae1cf73160 fix: 上传加固——bodyLimit 预检 413、StoredMeta 预留 ownerSub、强制 attachment+nosniff、穿越测试、RFC5987 文件名 2026-08-13 05:30:08 +08:00
lovefyf d8b59330fb feat: 网关上传转对象存储(FS 适配器、8MB 上限、防路径穿越) 2026-08-13 05:17:53 +08:00
lovefyf 0159c3a7eb test: 代理 POST 方法与请求体转发断言 2026-08-13 05:12:10 +08:00
lovefyf af1c1a8eb4 feat: 网关按域路由——验签拦门、剥伪造内部头、Authorization 原样转发 2026-08-13 05:04:10 +08:00