feat(server): readiness 与作业统计可观测性(E11)

- 新增 /ready(DB 探活失败返回 503)
- OCR 作业输出 claimed/available/duplicate/failed 统计
- README 补充 /health 与 /ready 说明
这个提交包含在:
2026-02-09 00:02:49 +08:00
父节点 479565f737
当前提交 75d5b3d5de
共修改 5 个文件,包含 54 行新增和 7 行删除
+15
查看文件
@@ -148,6 +148,21 @@ async function buildApp() {
return reply.send({ requestId: request.id, data: { ok: true } });
});
app.get("/ready", async (request, reply) => {
try {
await app.prisma.$queryRaw`SELECT 1`;
return reply.send({ requestId: request.id, data: { ok: true } });
} catch (error) {
app.log.error({ err: error, requestId: request.id }, "Readiness check failed");
throw new AppError({
code: "SYS_503",
message: "Service Unavailable",
statusCode: 503,
details: { db: "unreachable" },
});
}
});
await app.register(authRoutes, { prefix: "/api/auth" });
await app.register(meRoutes, { prefix: "/api" });
await app.register(reimbursementRoutes, { prefix: "/api" });