从 #2462 拆出,状态=deliberately unscheduled(ADR-0076 OQ#9 终裁 #3576)——本 issue 是防重新发明的台账,不是待办。
设想
HTTP adapter 枚举 DomainHandlerRegistry.list() 为每个 prefix 挂显式路由(app.all(prefix + route.prefix + '/*')),catch-all 只剩真 404——HTTP 层可打印自己的路由表。
dispatch() 的关卡序(env 解析→身份→auth gate→membership→scope strip)是横切的:显式路由后每条路由仍须过全部关卡 ⇒ 关卡必须 middleware 化或逐 handler 重复——重构成本大、行为面风险回归,而收益(路由可打印)已由 DomainHandlerRegistry.list() 可枚举性 + route-parity 门(declared===enforced e2e)+ conformance 41 断言基本覆盖。
重启条件(满足其一再议)
- 关卡序因其他独立动机被 middleware 化;
- 出现必须在 adapter 层做 per-prefix 差异化(限流/超时/中间件)的真实需求。
从 #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 断言基本覆盖。重启条件(满足其一再议)