从 #2462 拆出,**状态=deliberately unscheduled**(ADR-0076 OQ#9 终裁 #3576)——本 issue 是防重新发明的台账,不是待办。 ## 设想 HTTP adapter 枚举 `DomainHandlerRegistry.list()` 为每个 prefix 挂显式路由(`app.all(prefix + route.prefix + '/*')`),catch-all 只剩真 404——HTTP 层可打印自己的路由表。 ## 为什么不做(#3576 裁决) dispatch() 的关卡序(env 解析→身份→auth gate→membership→scope strip)是横切的:显式路由后每条路由仍须过全部关卡 ⇒ 关卡必须 middleware 化或逐 handler 重复——重构成本大、行为面风险回归,而收益(路由可打印)已由 `DomainHandlerRegistry.list()` 可枚举性 + route-parity 门(declared===enforced e2e)+ conformance 41 断言基本覆盖。 ## 重启条件(满足其一再议) - 关卡序因**其他独立动机**被 middleware 化; - 出现必须在 adapter 层做 per-prefix 差异化(限流/超时/中间件)的真实需求。
Activity
docs(hono): verdict anchor on the catch-all — read ADR-0076 OQ#9 befo…
os-zhuang commentedon Jul 27, 2026
归档关闭:deliberately unscheduled,防撞锚点已三层就位
裁决与重启条件保留在本 issue 正文,不再占用 open 列表。三层防线:
packages/adapters/hono/src/index.ts的 catch-all 处直接写明"改成显式 per-prefix 挂载前先读 OQ#9 裁决",并点名 naive split 会绕过关卡序 → authz(D10): getReadFilter 缺 delegator 交集 — analytics read-scope 对 agent 上下文不与委托人 RLS 求交(原 Gap 2 /analytics/query 无 context 已修复) #2852 那类 RLS 泄漏。想动这行的人第一眼就能看到。满足重启条件时重开即可。
fix(adapters/hono): the auth wildcard yields paths the auth service d…