P11-C refactor(routes): 拆 5 文件 — 入口 + security + query + metrics + ops

cmd/service/routes.mbt (747 行) 拆为同包多文件，零 import 改动：
  - routes.mbt (270 行): 入口 — handle_request dispatch + handle_panic +
    lookup_route + extract_base_path + send_json + send_error +
    read_json_or_400 + read_json_body + serve_static + content_type
  - routes_security.mbt (95 行): 5 个 P9 收紧安全 helper — is_safe_origin
    + is_loopback_hostport + is_safe_static_path + parse_nonnegative_int
    + content_length_too_large
  - routes_handlers_query.mbt (250 行, 12 handler): fuzzy_match / add_tm /
    tm_count / check_terms / concordance / qe_auto / mqm_re_annotate /
    predict / observe / recall / explain / retrieve_prompt
  - routes_handlers_metrics.mbt (190 行, 8 handler + 3 json helper):
    bleu / chrf / style_check / style_report / back_align / term_conflicts
    / metrics / health + json_str / json_int / json_num
  - routes_handlers_ops.mbt (165 行, 6 handler): reward / consolidate /
    fed_export / fed_import / distill_inject / active_learning

主题分组：入口/安全/查询/度量/运维 5 个职责分离；按 REST 端点语义层次
（query / mutation / metrics / ops）拆分让 diff 范围最小。
routes.mbt 从 747 → 270 行（-64%），单文件最大从 747 → 270。

验证：moon check --target native 0 警告；moon test --target wasm-gc 175/175
全绿；smoke test 27 REST 端点全通（11 个返 200，16 个必填校验返 400 符合
设计）；MCP tools/list 返 25 tools，tools/call ping 返 {"status":"ok"}。

Refs: docs/plans/2026-08-26-p11-architecture-review.md Finding 1.
