lyon
06284f5287
feat: add project workbench launch
2026-06-25 17:59:19 +08:00
lyon
de8ebb51c3
feat: add project management microservice
2026-06-25 16:34:59 +08:00
Lyon
77979025e7
feat: add web caserun compile path ( #2117 )
2026-06-25 13:00:23 +08:00
lyon
31be0b918d
fix(hwlab-node): expose diagnostics op metadata
2026-06-25 10:45:23 +08:00
lyon
c21fe192c8
fix(hwlab-node): stabilize tray diagnostics updater
2026-06-25 10:24:38 +08:00
lyon
42844887cc
feat: add HWLAB node Python GUI
2026-06-25 09:24:16 +08:00
Lyon
e2813e8a27
fix(v03): route prestop drain through v1 dispatcher ( #2004 )
2026-06-24 01:59:19 +08:00
Lyon
ebb9580c57
fix(v03): drain workbench sse before pod termination ( #2003 )
2026-06-24 01:55:01 +08:00
Lyon
5e1cc8ade5
fix(workbench): avoid readiness and SSE stalls ( #1951 )
2026-06-23 05:30:57 +08:00
Lyon
356a35e9b0
fix(api): keep live health probes within web budget ( #1916 )
2026-06-22 19:53:26 +08:00
Lyon
5c98660816
fix: throttle Workbench trace hydration ( #1911 )
2026-06-22 18:28:44 +08:00
Lyon
7fc4844b9d
fix: instrument slow readiness routes ( #1896 )
2026-06-22 15:06:51 +08:00
Lyon
0f3bc3f99a
fix workbench otel http span timing ( #1815 )
2026-06-21 12:07:37 +08:00
Lyon
6cafd495de
fix(cloud-api): keep health live nonblocking ( #1808 )
...
Route /health/live through cached runtime summary so DB durable retry cannot block liveness probes. Keep /health as the full durable readiness endpoint.\n\nRefs #1807 .
2026-06-21 10:28:02 +08:00
Lyon
fb1fe8d94a
feat(otel): 服务端 HTTP request span 追穿 hwlab-cloud-api 503 ( #1764 )
...
问题:hwlab-cloud-api 服务端 503(如 workbench 投影存储不可用)在 Tempo
里只有 workbench-ui 浏览器侧 span,没有服务端 request handler span,导致
后端根因(error.code=projection_store_unavailable 等)只能在应用日志里看,
OTel 链路追不到服务端处理层。
修复:
- otel-trace.ts 新增 emitHttpServerRequestSpan(scope hwlab.http.server,
SPAN_KIND_SERVER),捕获 http.route/method/status_code/status_class、
request.id,5xx 时落 STATUS_CODE_ERROR 并把 error.code/category/layer
写入 span 属性与 status.message。
- error-envelope.ts 的 decorateErrorPayloadForHttp 把诊断 error code/
category/layer 回写到 hwlabHttpRequestContext.lastHttpError,供 finish
时复用,避免重复解析。
- server.ts 在 response finish 时按 http context + backend performance
时序发服务端 span;health/metrics 探针路由跳过,避免 OTel 噪声洪泛。
验收:canary 调用 emitHttpServerRequestSpan 发 503 projection_store_unavailable
span 到 D601 platform-infra OTel collector,Tempo 可查到 service=hwlab-cloud-api、
scope=hwlab.http.server、http.response.status_code=503、error.code=
projection_store_unavailable 的 ERROR span。
2026-06-20 20:31:36 +08:00
lyon
b139ffd8e4
feat: normalize cloud api error diagnostics
2026-06-20 15:08:33 +08:00
lyon
efafeccfb9
feat: attach cloud api otel trace headers
2026-06-20 14:54:51 +08:00
Lyon
40a54eef20
feat: align rum samples with backend evidence ( #1674 )
2026-06-20 09:33:54 +08:00
lyon
e79ea2cb42
feat: persist workbench projection facts
2026-06-20 08:57:21 +08:00
lyon
4eadd2f85a
fix: trace workbench loading states with otel
2026-06-20 00:47:57 +08:00
lyon
5f1763aeac
fix: persist workbench turn admission before preflight
2026-06-19 21:55:15 +08:00
lyon
d2964d93a9
fix: resume workbench agentrun projection
2026-06-19 12:46:43 +08:00
lyon
c950709b25
fix(workbench): gc stale empty sessions
2026-06-19 01:16:00 +08:00
lyon
dac2a0b3c4
fix: canonicalize web auth principal
2026-06-18 23:45:17 +08:00
lyon
08b2e3077a
fix: converge workbench session authority
2026-06-18 15:24:16 +08:00
lyon
41d6407ab2
feat: add backend performance metrics
2026-06-17 18:22:30 +08:00
lyon
837d57dd5a
feat(workbench): add realtime event stream
2026-06-17 13:30:40 +08:00
lyon
4500fb6486
feat(workbench): 持久化 Code Agent trace 投影
2026-06-17 11:58:07 +08:00
lyon
bc9ee41d83
feat(workbench): add read-only API read model
2026-06-17 11:12:04 +08:00
lyon
2679b1f14e
fix: load Code Agent traces through REST resource
2026-06-16 21:57:51 +08:00
lyon
ce1f1031f5
fix: unify code agent turn status authority
2026-06-16 19:21:13 +08:00
lyon
ea96ebf75d
feat: add redeem billing loop
2026-06-14 21:21:01 +08:00
lyon
763b583070
feat: add admin usage ledger audit
2026-06-14 20:52:27 +08:00
lyon
91cd716137
fix: allow user billing session summary proxy
2026-06-14 15:56:23 +08:00
lyon
c84ee72eb9
feat: add v03 user billing entitlements
2026-06-14 15:34:13 +08:00
lyon
4c61550609
fix: expose v03 billing summary route
2026-06-14 13:45:23 +08:00
lyon
7823bb7a95
feat: 补齐 v03 用户管理 Web parity
2026-06-14 11:04:52 +08:00
Lyon
ee78ed9fdc
fix: 修正 user-billing 自服务代理鉴权边界 ( #1187 )
2026-06-14 10:17:56 +08:00
Lyon
b9dd25ef68
feat: 补齐 v03 user-billing R1 parity 基础 ( #1179 )
2026-06-14 09:59:48 +08:00
lyon
a6b897a08f
feat: add admin user status controls
2026-06-14 01:33:26 +08:00
lyon
40099c44ec
feat: add admin billing summary
2026-06-14 00:51:46 +08:00
lyon
3a8385b6f4
feat: expose user billing usage summary
2026-06-13 23:58:15 +08:00
Lyon
3f8fc6b80c
feat: connect cloud api code agent billing ( #1139 )
2026-06-13 20:19:07 +08:00
Codex Agent
466a5350de
feat: remove static provider profile gating
2026-06-08 04:58:29 +08:00
Codex Agent
892c9af366
fix: CaseRun blocker visibility in status + cloud-api hwpod_node_not_connected error
2026-06-07 12:45:32 +08:00
Codex Agent
5a7644dac9
fix: bind hwpod node ops to target node
...
Prevent direct hwpod-node URL dispatch from executing plans on the wrong node and expose spawn diagnostics for cmd.run failures.
2026-06-06 19:41:44 +08:00
Codex Agent
42b53e5795
fix: discover preinstalled hwpod specs
2026-06-06 01:49:59 +08:00
Codex Agent
483060a3ee
feat: add hwpod node native websocket dispatch
2026-06-05 19:26:13 +08:00
Codex Agent
3e7131f6ab
refactor: converge hwpod node-ops channel
2026-06-05 17:23:56 +08:00
Codex Agent
9a2c651c3c
feat: add v02 provider profile management
2026-06-05 17:14:59 +08:00