Commit Graph

75 Commits

Author SHA1 Message Date
Lyon ecbb13cdf4 fix: expose trace pagination in cli and otel (#1687) 2026-06-20 11:32:13 +08:00
lyon 08b2e3077a fix: converge workbench session authority 2026-06-18 15:24:16 +08:00
lyon 78a6b82751 fix: remove workspace session fallback from hwlab cli 2026-06-17 15:53:44 +08:00
lyon da6be55512 fix: remove workbench legacy read repair paths 2026-06-17 15:20:56 +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 43b79b6c7e fix: allow failed code agent sessions to resume 2026-06-16 03:24:33 +08:00
lyon 1a15863f9d fix: preserve restored session markdown 2026-06-15 23:03:20 +08:00
Lyon ce7c2658cf fix: unify workbench conversation message persistence (#1281) 2026-06-15 21:28:31 +08:00
lyon 2c6574e625 fix: expose agent trace result summary 2026-06-15 15:34:36 +08:00
lyon 8633ab77a7 fix: clarify account access CLI roles 2026-06-15 15:12:24 +08:00
lyon dbdac6e68a feat: add typed user query CLI 2026-06-15 14:56:11 +08:00
Codex Agent 19161b5f82 fix: preserve full web trace details 2026-06-08 13:13:48 +08:00
Codex Agent c52ba0dac2 feat: 支持 provider profile auth.json CLI 写入 2026-06-08 10:59:38 +08:00
Codex Agent 7408ba9da7 feat: add provider profile removal delegation 2026-06-08 05:29:11 +08:00
Codex Agent 34788702dc Allow dynamic AgentRun provider profiles 2026-06-08 03:22:26 +08:00
Codex Agent 494d3ed3bb fix: add async CaseRun CLI controls 2026-06-06 14:00:18 +08:00
Codex Agent 6cae643161 fix: remove legacy trace fallback paths 2026-06-06 13:55:03 +08:00
Codex Agent 44a59d4f9e fix: orchestrate caserun agent flow without grading 2026-06-06 12:53:31 +08:00
Codex Agent 2a651d11d3 fix: migrate caserun registry to hwlab-case-registry 2026-06-06 10:11:46 +08:00
Codex Agent 8fae961c7c feat: add compile-only hwpod caserun 2026-06-05 23:35:56 +08:00
Codex Agent 385d48613a fix: expose provider config editing in management 2026-06-05 23:01:50 +08:00
Codex Agent cc21ad40cb fix: enforce single hwlab api key env 2026-06-05 22:33:39 +08:00
Codex Agent a3ffd45e55 fix: enforce api key auth boundary 2026-06-05 21:58:16 +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
Codex Agent f5be1c0361 feat: add v02 web performance dashboard 2026-06-05 12:00:23 +08:00
Lyon 48e3d24ad6 fix: converge v02 authorization on OpenFGA (#899)
Co-authored-by: Codex Agent <codex@hwlab.local>
2026-06-05 11:11:15 +08:00
Codex Agent cf722efd06 feat: add v02 OpenFGA access management 2026-06-05 09:39:49 +08:00
Codex Agent fd1b8c0e5a fix(v02): remove legacy code agent control plane 2026-06-05 01:35:35 +08:00
Lyon 2129cebfef fix(v02): improve trace and sidebar web ui (#854)
Co-authored-by: Codex Agent <codex@hwlab.local>
2026-06-04 20:56:43 +08:00
Lyon eca9dbaa9c fix: persist expired code agent trace summaries (#851)
Co-authored-by: Codex Agent <codex@hwlab.local>
2026-06-04 20:40:36 +08:00
Lyon ef527d3ecd feat(v02): add final response session verifier (#847)
Co-authored-by: Codex Agent <codex@hwlab.local>
2026-06-04 19:02:13 +08:00
Codex Agent b4e8c0a8b4 fix(v02): expose trace render json summary 2026-06-04 18:28:41 +08:00
Codex 4d48db9e7c feat(hwlab-cli): client auth oidc-login returns Keycloak authorize URL 2026-06-04 15:01:30 +08:00
Codex ad53ff6ffb feat(hwlab-cli): v0.2 client auth whoami reads HWLAB_API_KEY first
- requestJson now prefers HWLAB_API_KEY (env or --apiKey / --bearerToken) and sends Authorization: Bearer hwl_live_...
- new client auth whoami command returns actor + authMethod via /v1/users/me
- client auth status reports apiKey.source and apiKey.prefix
- authVisibility + authDiagnosis surface apiKeySource/Prefix; invalid key returns api_key_invalid diagnosis
- legacy cookie / auto-login paths still work when no HWLAB_API_KEY is set
2026-06-04 15:01:30 +08:00
Codex 19438d6aa4 fix(v0.2): freeze HWLAB-AgentRun concept boundary for #792
P0 freezes the concept boundary between HWLAB (business session/workspace) and
AgentRun (tenant/policy/execution):

- HWLAB adapter now always uses DEFAULT_HWLAB_AGENTRUN_PROJECT_ID /
  DEFAULT_HWLAB_AGENTRUN_PROVIDER_ID / DEFAULT_HWLAB_AGENTRUN_BACKEND_PROFILE on
  AgentRun runPayload, regardless of caller options. Business projectId belongs
  in workspaceRef only, not in AgentRun projectId.

- commandPayload.projectId is now always set to the HWLAB-fixed
  DEFAULT_HWLAB_AGENTRUN_PROJECT_ID, never undefined and never derived from
  caller options.

- client agent send --session-id <SES> --conversation-id <CONV> without
  --provider-profile now looks up the explicit session record to inherit
  providerProfile / threadId / conversationId. Mismatched --conversation-id
  against the session record aborts with session_conversation_mismatch
  before dispatching to AgentRun (prevents stale session state from being
  used as a new conversation).

Contract tests added (all 4 passing):
- internal/agent/agentrun-dispatch.test.mjs: HWLAB AgentRun assembly fixes
  tenantId/projectId/providerId/backendProfile regardless of options; command
  payload does not leak business projectId into AgentRun command projectId.
- tools/hwlab-cli/client.test.ts: send --session-id + --conversation-id
  inherits explicit session providerProfile; fails with
  session_conversation_mismatch when the session points at a different
  conversation.

P2 (CLI/trace result segregation) and P3 (state machine convergence) remain
for follow-up. Tracked via #792 comment chain.

Tracked-by: pikasTech/HWLAB#792
2026-06-04 02:18:34 +08:00
Codex 1f504f00f9 fix(cli): inherit provider profile from explicit agent session 2026-06-04 00:28:22 +08:00
Codex 8f0a2cd213 fix: align v0.2 explicit agent session dispatch
Fixes HWLAB #782.
2026-06-03 22:50:58 +08:00
Codex 58b06fcd17 fix(web): enforce React TypeScript single path 2026-06-03 17:47:27 +08:00
Codex d39e322bf0 fix(web/cli): do not truncate the terminal final-response body in trace rows
- HWLAB v0.2 Final Response was being truncated to 5000 characters in
  traceAssistantSummaryRow and then again to 1200 characters in the CLI
  compactTraceRenderRow, even when the response was the assistant’s
  terminal (last) message. The same Final Response is what
  /v1/agent/chat/result returns as reply.content, so the trace view
  should show the full text and stay consistent with the CLI
  assistantText path.
- Mark each rendered row with a terminal flag (true only for the
  terminal Final Response) and lift the body cap to
  Number.POSITIVE_INFINITY for terminal rows. The CLI Web-render path
  now passes the full body through when row.terminal is true and keeps
  the 1200 char preview for non-terminal streaming rows.
- Add unit tests in web/hwlab-cloud-web/app-trace.test.ts and
  tools/hwlab-cli/client.test.ts to lock the behavior in for the
  terminal/no-truncate path and the streaming/2200 cap path.

Refs: pikasTech/HWLAB#722
2026-06-03 13:26:19 +08:00
Lyon a72f14166e Merge pull request #743 from pikasTech/fix/issue740-webui-session-mgmt
fix(issue740): HWLAB v0.2 WEBUI session management improvements
2026-06-03 11:43:08 +08:00
Codex 6dbc72deac fix(issue740): HWLAB v0.2 WEBUI session management improvements
1. 在 panel-title-row 增加"复制 session id"按钮,把当前会话
   conversation id 复制到剪贴板,便于在 HWLAB CLI 复现;
2. 侧边栏标签改为显示最近更新时间(相对时间),排序仍然按
   lastTimestampMs 倒序,新会话靠前;
3. messageCount 与 firstUserMessagePreview 由 backend 持久化,
   不再被 slice(-50) 窗口掩盖,CLI/Web 看到的条数一致;
4. 把 left-sidebar-resize 移到 session-sidebar 右侧,
   activity-rail 固定 92px,拖拽控制 session-sidebar 宽度;
5. 侧边栏标签默认显示用户摘要(首条 user message 截断),
   长文本用省略号收尾。

新增 `hwlab-cli client session inspect <conversationId>` 子命令
与 `GET /v1/agent/conversations/{id}` 端点对齐,便于在 CLI 复现
WEB 看到的 session 详情(包含 messageCount / trace / thread)。

Backend 改动:access-control.ts 的 normalizeConversationSnapshot
和 mergeAgentSessionOwnerEvidence 现在按 max 累加 messageCount,
并保留 firstUserMessagePreview;mergeTerminalConversationMessages
返回 { messages, messageCount, firstUserMessagePreview }。
2026-06-03 11:41:02 +08:00
Codex 2f435fc736 fix: 改进手动 session CLI 摩擦 2026-06-03 11:06:43 +08:00
Codex 94b9df822c feat: 手动化 Code Agent session 管理 2026-06-03 10:40:50 +08:00
Codex da25cb4c02 feat: align session sidebar and cli management 2026-06-03 09:47:52 +08:00
Codex 05c5c046bc fix: keep hwlab cli workspace output current 2026-06-03 01:28:30 +08:00
Codex 6cd4cb292d fix: restore hwlab cli workspace after completion 2026-06-03 01:14:08 +08:00
Codex ba5c8fdf35 fix: persist hwlab cli workspace updates 2026-06-03 01:04:18 +08:00
Codex 0445981f62 fix: prefer current conversation thread in hwlab cli 2026-06-03 00:43:55 +08:00