mateclaw/mateclaw-server/src/main/java/vip/mate
倪程伟 d3a432d8e3
fix(wiki): dedup directory-scanned files by source path, not just content hash (#272)
Directory-scan ingestion deduped only by content hash, so when a file at a known path changed, the new hash missed the existing raw and a second row was inserted for the same source_path — both rows then generated wiki pages, accumulating duplicates. Make source path the primary dedup key: same path + same hash skips, same path + changed hash updates the existing raw in place (reset to pending, re-process), falling back to the content-hash check only for genuine copies at new paths. Reprocessing reuses the same rawId, so deleteExclusiveBySourceRawId cleans the old pages before regeneration — no duplicate rows and no duplicate pages. findBySourcePath gains LIMIT 1 to tolerate pre-existing duplicates; docs/fix-duplicate-raws.sql remediates existing data.

Closes #271
2026-06-07 19:50:21 +08:00
..
acp feat(workspace,system): add @RequireGlobalAdmin and gate admin-only controllers 2026-05-15 10:18:10 +08:00
activity feat(workspace,system): add @RequireGlobalAdmin and gate admin-only controllers 2026-05-15 10:18:10 +08:00
agent feat(agent): add kill-switch for final-answer Markdown normalization 2026-06-07 19:15:14 +08:00
approval polish(approval-grants-ui): show granter name, fix note cell rendering, tighten layout 2026-05-27 15:09:11 +08:00
audit feat(platform): workspace isolation, info architecture, and UI redesign 2026-04-09 16:29:02 +08:00
auth fix(approval): three minor issues surfaced by end-to-end testing 2026-05-27 14:08:12 +08:00
channel fix(channel): point Feishu attachment part path to the staged chat-uploads copy (#279) 2026-06-07 18:52:00 +08:00
common feat(agent): deterministic Markdown normalization for final answers (#275) 2026-06-07 19:10:53 +08:00
config fix(agent): structure-aware truncation to stop mid-JSON cuts inducing hallucination (#187) 2026-05-21 15:13:07 +08:00
cron fix(cron): persist token usage to the run row on completion (#263) 2026-06-07 17:51:08 +08:00
dashboard fix(dashboard): count tool calls from assistant.metadata, not role=tool rows 2026-05-24 22:58:02 +08:00
datasource Harden goal approval and workspace flows 2026-05-23 22:55:16 +08:00
exception fix(api): return 400 on path-variable type mismatch instead of 500 2026-05-24 22:57:51 +08:00
goal fix(goal): drop score gate, bill failed evaluator calls, fix Evaluator SPI + tool prompt + bootstrap cap 2026-06-03 21:19:27 +08:00
hook feat(hook): HMAC-SHA-256 body signing for outbound webhooks 2026-05-02 15:41:13 +08:00
i18n fix(i18n): stop logging missing-key noise for optional tool descriptions 2026-05-19 20:06:38 +08:00
llm fix(llm): preferred provider now drives primary model selection — per-provider model resolution + unconfigured-provider skip 2026-06-04 07:36:31 +08:00
memory feat(memory): per-owner memory isolation with owner_key + visibility scope (#235) 2026-06-02 17:04:06 +08:00
notification feat(ui): surface pending approvals + stuck agents as sidebar badges 2026-05-15 10:17:30 +08:00
planning refactor(db): drop @TableLogic on all entities, purge soft-deleted rows 2026-04-18 23:31:48 +08:00
plugin feat(skill,tool,plugin): gate skill/tool/plugin endpoints by workspace role 2026-05-15 10:17:56 +08:00
skill fix(tool-guard): trust shared skill root outside the workspace boundary 2026-05-29 09:59:19 +08:00
stt feat(stt): route OpenAI Whisper provider to any OpenAI-compatible endpoint (#76) 2026-05-09 13:57:52 +08:00
system feat(proxy): global outbound HTTP/SOCKS proxy with settings page (#109) 2026-06-07 16:12:02 +08:00
task feat(task): generic one-shot Callable runner with parent-conv cancel 2026-05-16 14:51:04 +08:00
tool fix(skill): enforce agent skill bindings in skill meta-tools at runtime (#265) 2026-06-07 17:30:41 +08:00
trigger feat(workspace,system): add @RequireGlobalAdmin and gate admin-only controllers 2026-05-15 10:18:10 +08:00
tts fix(wiki): backend hardening + batch delete UI 2026-04-13 15:37:12 +08:00
wiki fix(wiki): dedup directory-scanned files by source path, not just content hash (#272) 2026-06-07 19:50:21 +08:00
workflow fix(workflow): pre-check unique name on create/rename, return 409 instead of 500 (Fixes Gitee #IJPYWA) 2026-05-26 23:35:04 +08:00
workspace feat(memory): per-owner memory isolation with owner_key + visibility scope (#235) 2026-06-02 17:04:06 +08:00
MateClawApplication.java refactor(llm): decouple model construction from the agent graph layer (#147) 2026-05-18 07:47:49 +08:00