Commit Graph
208 Commits
Author SHA1 Message Date
gongzhiyongandClaude Sonnet 4.6 a55c264cc0 fix: 禁用并发消息发送,改为串行模式
AI 回复流式输出期间禁用输入框和 Enter 提交,防止并发请求导致状态混乱。
移除并发对话弹窗和消息排队逻辑,简化为直接 disabled。

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-13 14:01:07 +08:00
gongzhiyongandClaude Sonnet 4.6 bb013af19f debug: add console logs to diagnose search-result card rendering issue
Add [thread-ui], [ui-debug], [tool-ui-match] console logs to trace
why searcher search-result cards show only skeleton after search completes.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-13 13:15:32 +08:00
gongzhiyongandClaude Opus 4.6 ffdb88677b fix: prevent checkpoint pollution + add reset thread button
Trigger auto deployment for soc-langgraph / build-and-deploy (push) Failing after 28s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 36s
- Add checkpoint guard in all 4 tool-executors ensuring every
  tool_call_id gets a ToolMessage response
- Add cleanPollutedToolCalls utility to heal corrupted message history
- Add error banner with "重置此对话" button in frontend

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-13 01:16:11 +08:00
gongzhiyongandClaude Opus 4.6 bd7f227b11 fix: add Jina X-Timeout header + ensure webRead always throws Error instances
Trigger auto deployment for soc-langgraph / build-and-deploy (push) Failing after 28s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 36s
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-13 00:49:58 +08:00
gongzhiyongandClaude Sonnet 4.6 51bf279ac6 fix: sequential tool calls + standalone search-result cards
Trigger auto deployment for soc-langgraph / build-and-deploy (push) Failing after 23s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 40s
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-13 00:34:49 +08:00
gongzhiyongandClaude Sonnet 4.6 5f9d05135d fix(searcher): remove card_id from search-result ui.push props
Trigger auto deployment for soc-langgraph / build-and-deploy (push) Failing after 28s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 38s
SearchResultProps does not declare a card_id field, so passing it caused
TS2769 type errors. search-result cards do not need loading→done dedup
(each google_search/web_search_deep call produces a complete result in one
push), so the card_id and associated local variables are unnecessary.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-13 00:28:04 +08:00
gongzhiyongandClaude Sonnet 4.6 2830024cb9 fix: add card_id to google_search and web_search_deep ui.push for precise matching
Trigger auto deployment for soc-langgraph / build-and-deploy (push) Failing after 20s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 40s
Each search result card now carries a unique card_id containing the tool call id
(e.g. google-search-<tc.id>), enabling the ToolCallStatus exact-match logic to
correctly bind cards to their originating tool call without index-based offset errors.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-13 00:26:49 +08:00
gongzhiyongandClaude Sonnet 4.6 869d3d54f9 fix(searcher): disable parallel tool calls and remove stale card_id from search-result props
- Add parallel_tool_calls: false to searcher agentNode bindTools call so the
  LLM is forced to execute search tools one at a time (google_search first,
  then web_read in a separate turn); prompt-level "strict禁止" alone cannot
  override model-side parallel tool calling behaviour
- Remove card_id field from google_search and web_search_deep ui.push props;
  SearchResultProps does not declare card_id so the field caused TS2769
  overload errors; these cards do not need deduplication (each search is a
  distinct query), while the card_id variables were introduced by a previous
  commit and are now unused
- Clean up unused googleCardId and deepCardId local variables

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-13 00:26:24 +08:00
gongzhiyongandClaude Sonnet 4.6 87d1a5f937 fix: resolve web-read-progress skeleton screen and search-result card disappearing
Trigger auto deployment for soc-langgraph / build-and-deploy (push) Failing after 28s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 38s
- Add web_read -> web-read-progress mapping to standaloneUiItems filter in main.tsx
  so web-read-progress cards are no longer mistakenly treated as standalone
- Add web-read-progress to CARD_TYPE_PRIORITY (550) to ensure stable sort order
  and prevent search-result cards (500) from being reordered relative to web-read cards
- Add unique card_id (containing tc.id) to google_search and web_search_deep ui.push
  calls so each search result card can be precisely identified
- Improve uiItem matching in ToolCallStatus to first try exact match via card_id
  containing tc.id, falling back to index-based matching only when necessary;
  this prevents index offset bugs when multiple same-type tools run concurrently

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-13 00:24:50 +08:00
gongzhiyongandClaude Opus 4.6 9cf6293198 fix: use Promise.allSettled to prevent missing ToolMessage responses
Trigger auto deployment for soc-langgraph / build-and-deploy (push) Failing after 39s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 47s
When LLM sends multiple parallel tool_calls but one throws unexpectedly,
Promise.all loses all results causing 400 error from OpenAI.
Promise.allSettled ensures every tool_call_id gets a response.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-13 00:20:57 +08:00
gongzhiyongandClaude Opus 4.6 e3147231a6 chore: remove manual deploy workflow, use Azure native CD
Azure Container App auto-deploy workflow replaces our manual
deploy-langgraph.yml. CD is now managed via Azure Portal.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-13 00:00:14 +08:00
Fasthei a2d9a1e34f Create an auto-deploy file 2026-04-12 23:56:14 +08:00
gongzhiyongandClaude Opus 4.6 ac16f38821 docs: update all agent md files with latest architecture
- Container App URLs (not Web App)
- ACR in AuthData resource group
- 5 sub-agents (enterprise/searcher/coder/writer/generalInput)
- New components (web-read-progress, force-summary)
- Logs unified to AuthData/LoGSOC + SOC

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-12 23:49:16 +08:00
gongzhiyongandClaude Opus 4.6 257a4412aa fix: increase web_read timeout from 8s to 30s with retry
Deploy LangGraph Server to Azure Container App / build-and-deploy (push) Failing after 27s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 42s
8s timeout caused Jina Reader failures on slower sites like news.cn.
Increased to 30s with 2 retries and 1s backoff.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-12 23:38:36 +08:00
gongzhiyongandClaude Opus 4.6 2b614ddef2 fix(ci): ACR resource group is AuthData not Operation
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-12 23:36:20 +08:00
gongzhiyongandClaude Opus 4.6 d8b989f681 fix: add ErrorBoundary around Gen-UI cards to prevent black screen
Deploy LangGraph Server to Azure Container App / build-and-deploy (push) Failing after 14s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 52s
Wraps all LoadExternalComponent usages with CardErrorBoundary so
card rendering errors show an inline error message instead of
crashing the entire app.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-12 23:34:08 +08:00
gongzhiyongandClaude Opus 4.6 4267d0a62a feat(ui): default expand tool call results and execution log
Deploy LangGraph Server to Azure Container App / build-and-deploy (push) Failing after 22s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 51s
Tool call status cards and execution log panel now expand by default
so users can see CoT process and results without clicking.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-12 23:29:08 +08:00
gongzhiyongandClaude Sonnet 4.6 3ef9624385 chore: migrate backend from Azure Web App to Container App
Deploy LangGraph Server to Azure Container App / build-and-deploy (push) Failing after 27s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 37s
- Replace soc-langgraph Web App with Azure Container App (soc-cae environment)
- New URL: soc-langgraph.victorioussand-69befc84.southeastasia.azurecontainerapps.io
- Update deploy-langgraph.yml: Web App restart -> az containerapp update --image
- Update deploy-langgraph-ui.yml: VITE_LANGGRAPH_URL to Container App URL
- Container App: min 1 replica, max 3, CPU 1.0, Memory 2Gi, port 8080
- Update CLAUDE.md architecture and deployment docs

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-12 22:58:44 +08:00
gongzhiyongandClaude Opus 4.6 48c9e0c854 fix: revert to langgraphjs dev mode to restore Azure service
server.ts production mode crashes on startup (exit code 1).
Revert to langgraphjs dev until startServer() compatibility is resolved.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-12 22:51:02 +08:00
gongzhiyongandClaude Sonnet 4.6 0dd9216720 fix: add @langchain/langgraph-api as direct dependency for production mode
Deploy LangGraph Server to Azure Web App / build-and-deploy (push) Failing after 27s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 40s
server.ts uses createRequire to resolve @langchain/langgraph-api at startup.
With pnpm, indirect dependencies are not hoisted to node_modules/@langchain/,
causing "Cannot find module" error and container exit code 1 on Azure.

Adding it as an explicit dependency ensures pnpm creates the direct symlink.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-12 22:41:58 +08:00
gongzhiyongandClaude Opus 4.6 0d97298b6a feat: web-read-progress Gen-UI card + production mode + security fixes
Deploy LangGraph Server to Azure Web App / build-and-deploy (push) Failing after 13s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 51s
- Add web-read-progress Gen-UI card for real-time web reading feedback
- Searcher tool-executor pushes loading→complete cards during web_read
- ToolCallStatus supports expanding during loading state
- Switch from langgraphjs dev to production mode (server.ts)
- Add Hono middleware to strip sensitive request headers
- Bundle splitting via Vite manualChunks (1.85MB → 8 chunks)
- SPA fallback via staticwebapp.config.json
- Agent model configs updated (sonnet 1M → standard sonnet)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-12 22:18:05 +08:00
gongzhiyongandClaude Sonnet 4.6 5503a7ca9d fix: add web_search_deep to UI_NAME_MAP in ToolCallStatus and main.tsx
Deploy LangGraph Server to Azure Web App / build-and-deploy (push) Failing after 17s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 42s
Previously web_search_deep tool calls were missing from the UI_NAME_MAP,
causing their search-result cards to render as standalone cards instead of
being embedded within the ToolCallStatus component row.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-12 21:54:15 +08:00
gongzhiyongandClaude Sonnet 4.6 bb1885eca1 fix(searcher): prevent silent termination when MAX_ITERATIONS reached
Deploy LangGraph Server to Azure Web App / build-and-deploy (push) Failing after 13s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 51s
When tool rounds hit MAX_ITERATIONS, the router was jumping directly to
END without giving the LLM a chance to produce a final text reply.
Added a `force-summary` node that invokes the LLM without tools,
ensuring a coherent Chinese summary is always generated after all
search results are collected.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-12 21:42:59 +08:00
gongzhiyongandClaude Sonnet 4.6 60735de884 fix(security): strip Azure HTTP headers from thread config to prevent IP leak
Deploy LangGraph Server to Azure Web App / build-and-deploy (push) Failing after 16s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 43s
The LangGraph API server injects all x-* request headers into
thread.config.configurable, which gets persisted and exposed via
POST /threads/search. This leaked Azure-injected headers (x-forwarded-for,
x-client-ip, x-arr-ssl, etc.) to any user.

Adds a Hono middleware (http.app) that strips sensitive infrastructure
headers at the HTTP layer before they reach the LangGraph API routes.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-12 20:48:06 +08:00
gongzhiyongandClaude Sonnet 4.6 569e157f25 fix: SPA 404 fallback + JS bundle code splitting + pre-existing build errors
Deploy LangGraph Server to Azure Web App / build-and-deploy (push) Failing after 29s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 39s
- Add public/staticwebapp.config.json with navigationFallback for Azure SWA SPA routing
- Add manualChunks in vite.config.ts to split vendor deps (react/langgraph-sdk/assistant-ui/radix/markdown/charts/router)
- Add property-information resolve alias to fix refractor→hastscript@6 CJS/ESM conflict (pre-existing build failure)
- Exclude agent/ from tsconfig.app.json to fix hono missing type error (agent is backend-only, frontend CI uses pnpm vite build directly)

Build output chunks:
  vendor-react: 12.30 kB (gzip: 4.35 kB)
  vendor-langgraph: 32.85 kB (gzip: 9.29 kB)
  vendor-markdown: 316.65 kB (gzip: 94.19 kB)
  vendor-charts: 428.01 kB (gzip: 113.50 kB)
  vendor-assistant-ui: 740.11 kB (gzip: 260.11 kB)
  index: 379.74 kB (gzip: 110.17 kB)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-12 20:45:54 +08:00
gongzhiyong 00f5dc3438 fix: flash via lastMessagesRef, web_read timeout 8s, searcher no parallel google+web_read
Deploy LangGraph Server to Azure Web App / build-and-deploy (push) Failing after 16s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 45s
2026-04-12 17:29:16 +08:00
gongzhiyong 6f036abdaa feat: CoT output — agents output thinking sentence before tool calls
Deploy LangGraph Server to Azure Web App / build-and-deploy (push) Failing after 30s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 39s
2026-04-12 17:21:02 +08:00
gongzhiyong 782ef8ab95 style: redesign Stop button — border style, Loader2 spinner during stopping
Deploy LangGraph Server to Azure Web App / build-and-deploy (push) Failing after 36s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 41s
2026-04-12 17:06:37 +08:00
gongzhiyong 004f26eb94 fix: Stop button uses cancelling poll flow, shows status text during stop
Deploy LangGraph Server to Azure Web App / build-and-deploy (push) Failing after 35s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 41s
2026-04-12 16:45:36 +08:00
gongzhiyong 1034d4bbc8 fix: remove hardcoded secrets, centralize storage config, move dev deps to devDependencies 2026-04-12 16:16:11 +08:00
gongzhiyong fb23b64df2 feat: Redis tool cache, Service Bus alerts, doc-creator agent for edit/translate 2026-04-12 16:15:45 +08:00
gongzhiyong 33cd268003 fix: jina partial_success, bash base64, ticket parallel search, ExecutionLogPanel toolCallId, sanitizeTitle regex
Deploy LangGraph Server to Azure Web App / build-and-deploy (push) Failing after 27s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 38s
2026-04-12 16:06:21 +08:00
gongzhiyongandClaude Sonnet 4.6 73a7175051 feat: cancelling status, ThreadSidebar lastActive time, MessageBubble smart summary
Deploy LangGraph Server to Azure Web App / build-and-deploy (push) Failing after 23s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 53s
- 点5: cancelling 独立状态 UI,用轮询替换 300ms setTimeout,StreamStatusBar 加橙色视觉
- 点6: ThreadSidebar formatTime 支持毫秒时间戳,时间展示改用 lastActive
- 点7: MessageBubble 智能摘要(关键词优先/标题次优/跳开场白),折叠阈值提升至25行/800字,展开后可收起

Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
2026-04-12 15:44:58 +08:00
gongzhiyongandClaude Sonnet 4.6 1be8b2602d refactor: preValidateToolCall rules array, extract getLastHumanContent helper
Deploy LangGraph Server to Azure Web App / build-and-deploy (push) Failing after 17s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 42s
Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
2026-04-12 15:43:04 +08:00
gongzhiyongandClaude Sonnet 4.6 e4ba9f78b1 feat: add toolCallId to ExecutionLogEntry for precise frontend matching
Deploy LangGraph Server to Azure Web App / build-and-deploy (push) Failing after 21s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 39s
Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
2026-04-12 15:28:29 +08:00
gongzhiyongandClaude Sonnet 4.6 107069ea06 feat: execution_log full fields in ToolCallStatus, index matching, ExecutionLogPanel overview badges
Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
2026-04-12 15:28:27 +08:00
gongzhiyongandClaude Sonnet 4.6 4895ff5465 feat: message queue upgrade, full payload snapshot, StreamStatusBar queue count, config badge
Deploy LangGraph Server to Azure Web App / build-and-deploy (push) Has been cancelled
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Has been cancelled
- Replace single pendingSubmitRef with pendingQueueRef array supporting multiple queued messages
- Add SubmitPayload interface to snapshot text/file/tools/modelMode at submission time
- Rewrite handleSubmit/doSubmit to use payload snapshots instead of closures over mutable state
- Rewrite handleConcurrentQueue with polling loop that drains the queue sequentially
- Rewrite handleConcurrentInterrupt and handleConcurrentCancel for queue awareness
- StreamStatusBar queued state now shows count (N 条消息已排队) and inline cancel button
- Add key={concurrentStatus} to StreamStatusBar div for fade-in animation on status change
- Config panel summary button shows numeric badge instead of dot when tools are active

Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
2026-04-12 15:28:16 +08:00
gongzhiyong 964e0dd305 fix: load historical messages when switching threads via client.threads.getState
Deploy LangGraph Server to Azure Web App / build-and-deploy (push) Failing after 29s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 47s
2026-04-12 15:14:29 +08:00
gongzhiyongandClaude Sonnet 4.6 0d36c0fc0d feat: execution log panel, stream status bar, config polish, card sorting, error recovery CTA
Deploy LangGraph Server to Azure Web App / build-and-deploy (push) Failing after 22s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 41s
- Point 5: dual-layer card sort (type priority + sort_key)
- Point 3: config summary text, active button style, Escape key, open animation
- Point 2: ConcurrentStatus state machine with StreamStatusBar
- Point 1: ExecutionLogPanel component replaces text-based execution summary
- Point 4: error-result gets fallback tool suggestions and direct-answer CTA

Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
2026-04-12 15:10:17 +08:00
gongzhiyongandClaude Sonnet 4.6 531197fd68 feat: add originalQuery to error-result props, semantic sort_key weights for card ordering
Deploy LangGraph Server to Azure Web App / build-and-deploy (push) Failing after 14s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 46s
- All error-result ui.push() calls now include originalQuery derived from the failed tool's input args
- Added CARD_SORT_WEIGHT constant mapping card names to semantic sort priorities (error=100, chart=200, knowledge=300, ticket=400, search=500, code=600, doc=700, actions=900)
- All sort_key values now computed as CARD_SORT_WEIGHT * 1_000_000 + timestamp for stable ordering

Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
2026-04-12 15:09:13 +08:00
gongzhiyong 66eaf7680d fix: sanitize thread titles — reject UUID/hash/empty values, fallback to 新对话
Deploy LangGraph Server to Azure Web App / build-and-deploy (push) Failing after 37s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 47s
2026-04-12 15:01:29 +08:00
gongzhiyong b93f08f206 feat: soc-client timeout via toolConfig, 24 unit tests, fix abort early-check and placeholder regex
Deploy LangGraph Server to Azure Web App / build-and-deploy (push) Failing after 24s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 39s
2026-04-12 14:57:06 +08:00
gongzhiyongandClaude Opus 4.6 38395226e5 feat: fix filterTools modelMode, tool call limit, temperature default, preValidate routing rules
Deploy LangGraph Server to Azure Web App / build-and-deploy (push) Failing after 15s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 47s
- filterTools now actually filters by modelMode (flash excludes search tools)
- Hard limit of 3 tool calls per turn in preValidateToolCall
- Temperature default changed from 0.5 to 0.2 to match MODEL_PRESETS.auto
- ticket_list blocked when message contains specific ticket ID (TK-xxxx)
- google_search/web_search_deep blocked for internal knowledge queries

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-12 14:49:35 +08:00
gongzhiyong 23e228b0f9 docs: fix CLAUDE.md — Supervisor uses AzureOpenAI not Gemini 2026-04-12 14:48:26 +08:00
gongzhiyongandClaude Sonnet 4.6 7167109414 feat: collapse model/tool config into expandable summary bar
Deploy LangGraph Server to Azure Web App / build-and-deploy (push) Failing after 17s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 43s
Replace flat tool toggles + model selector bar with a default-collapsed
summary chip (e.g. "Auto · 已开启 3 个工具 ▾") that expands upward into
a compact panel. Panel auto-closes on outside mousedown click. Options
changes keep the panel open.

Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
2026-04-12 14:40:18 +08:00
gongzhiyongandClaude Sonnet 4.6 d86da0e48b feat: abort/cancel support in tool-executor and retry
Deploy LangGraph Server to Azure Web App / build-and-deploy (push) Failing after 20s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 38s
Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
2026-04-12 14:33:47 +08:00
gongzhiyongandClaude Sonnet 4.6 f375220eb6 feat: concurrent input dialog, unlock textarea during loading, fix TS errors
Deploy LangGraph Server to Azure Web App / build-and-deploy (push) Failing after 12s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 45s
- Add showConcurrentDialog modal when submitting while AI is loading
- Offer interrupt (stop + submit) or queue (poll until done) options
- Remove disabled={thread.isLoading} from textarea and FileUploadButton
- Fix TS2352: cast BaseMessage to unknown first before Record
- Fix TS6133: rename unused toolName param to _toolName
- Fix TS2769: chart_type typed as union literal, not string
- Fix TS2322: separate cmdMap lookup from const declaration in soc-client

Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
2026-04-12 14:31:29 +08:00
gongzhiyongandClaude Sonnet 4.6 e8a29e1f89 feat: toolConfig.ts, expanded preValidate rules, envelope unification, fallbackFrom, temperature pass-through
Deploy LangGraph Server to Azure Web App / build-and-deploy (push) Failing after 24s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 39s
- New src/agent/utils/toolConfig.ts: centralized per-tool timeout/retry config
- preValidateToolCall: kb_search min query length + duplicate guard, ticket_list page range, ticket_detail placeholder ID detection
- ExecutionLogEntry: added fallbackFrom and retryCount fields
- retry.ts: added onAttempt callback for retry counting
- tool-executor.ts: all 7 tool content returns unified to {ok, tool, summary, resultCount, data, error, fallback} envelope
- supervisor/types.ts: temperature slider config field
- enterprise/agent.ts: temperature pass-through to createLlm()

Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
2026-04-12 14:16:19 +08:00
gongzhiyongandClaude Sonnet 4.6 fc56503e22 feat: ToolCallStatus partial_success/fallback_success visual states
Deploy LangGraph Server to Azure Web App / build-and-deploy (push) Failing after 17s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 41s
- Add CornerDownRight, AlertCircle icons for fallback/partial states
- New isPartial/isFallback props on ToolCallRow with hint banners
- Read execution_log from thread.values in main.tsx, pass to ToolCallStatus
- Match by tc.name === entry.tool to determine partial/fallback per row

Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
2026-04-12 14:13:14 +08:00
gongzhiyongandClaude Sonnet 4.6 2f201bf1f0 feat: expand preValidateToolCall rules, add traceId+batch summary, extend log protocol to all agents
Deploy LangGraph Server to Azure Web App / build-and-deploy (push) Failing after 23s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 37s
- Add validation for web_search/google_search (query length), sandbox_run/code_execute (empty code + dangerous commands), doc_create/report_generate/reply_draft (title/topic required)
- Add traceId field to ExecutionLogEntry, generate per-request traceId in enterprise tool-executor with batch summary log
- Add structured console.log tool_exec events to searcher, coder, writer tool-executors (no state changes)

Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
2026-04-12 13:55:19 +08:00