Rebuild for kamo-shared-library update (effective-feature resolver)
Picks up the new AppliedModelEnforcementService methods (computeAvailabilitiesMap, isAppEffectivelyEnabled, getEffectivelyEnabledAppTypes, computeEffectiveFeatu...
Rebuild for kamo-shared-library update (applied-model enforcement + appConfigs + isPrivate)
:: إعادة بناء بحيث تقوم هذه الخدمة بسحب الليبرالي المستكمل المحتوي على نظام إنفاذ مطبق، ومؤسسة مودل آب، وشركة الخدمات العامة، وشركة موفرات الحماية من النوع، الم...
Rebuild for kamo-shared-library update (runtime force rules + DEFAULT fallback in MemberRightsAppliedService)
تقوم بإعادة بناء هذه الخدمة حتى تلتقط المستجدات.
Rebuild for kamo-shared-library update (master model, default role templates, force-rule resolver)
تقوم بإعادة بناء هذه الخدمة حتى تسحب التنقيح الليبرالي الجديد الذي يحتوي على المنظمة. الكيانات، منظمة " رويت تيبلاستينغ " طراز enum, DefaultRoleType enum, and A...
Add concurrency group to prevent duplicate workflow runs
When a push triggers a workflow and workflow_dispatch is also fired (or two pushes arrive in quick succession), both runs would execute simultaneously. Adding a...
إعادة بناء ثلاثية مع تحديث المكتبة المشتركة (PublicChatVisitor @MapsId fix)
إضافة نقاط نهاية دردشة عامة مع إدماج فريق الاتصال الإقليمي للزوار مجهولي الهوية
يضاف نقاط نهاية لكل شهر/يوم/ساعة للحديث غير الرسمي عن موقع التسويق. يَعْبرُ توك auth filter للمسارات العامة. استخدام النظام العام بسرعة RAG with memberType=null...
انخفاض عتبة الحد الأدنى من الحد الأدنى لمعدلات الإنتاج من 0.5 إلى 0.25 لإيقاف تصفية النتائج ذات الصلة ببروميد الميثيل
وكانت عتبة الـ 0.5 تستبعد صمتا النتائج الصحيحة من النموذج المدمج، ولا سيما بالنسبة للمحتوى الخاص بمجالات محددة مع ناقلات أصغر من 384-ديم.
تمرير عضو من خلال فريق البحث عن النتائج
حل نوع العضو من المستودع العضوي وإدراجه في طلبات البحث المقدمة من الفريق الاستشاري حتى يُمكن للمُدير (دي بي) أن يُرشّح مقالات (كي بي) عن طريق رؤية الجمهور.
دمج أدوات برنامج المقارنات المتعددة الكلور مع حلقة سلسلة الأدوات في تدفق الدردشة المتزامنة
ضمان الاستشهاد الهيكلي بعد التجهيز أن يتم الاستشهاد دائما بمصادر الأهداف الإنمائية للألفية
Wire ConversationContextService for sliding window context management
Trims conversation history to fit model's context window before sending to LLM. Keeps recent messages verbatim, summarizes older ones.
Include clickable source links in RAG context for AI chat
Update RagClient to embed markdown links in the context sent to the AI model. KB articles link to /kb/{guid}, notes link to /notes?id={noteId}. Instructs the mo...
Pass memberId to RAG for note-aware AI chat
Add extractMemberId to SessionHelper. Update RagClient to send memberId in search requests so RAG returns both org KB articles and the member's own AI-enabled n...
Update AI entity ID references from Long to UUID
Updates all controllers, services, and WebSocket handler to use UUID for AI entity IDs (providers, models, sessions, messages, folders, policies, MCP configs). ...
Add response body and request logging to RagClient for debugging
Log the RAG search request URL, orgId, query, and response body on error to diagnose 500 responses from RAGService.
Add RAG context injection for Knowledge Base in AI chat
- New RagClient service for calling RAGService semantic search - ChatOrchestrationService injects KB context before AI responds - Configurable via AiOrgSettings...
Use non-streaming chat completion for REST endpoint
Streaming over REST with blockLast() was producing empty responses because WebClient's SSE parsing doesn't work reliably with bodyToFlux(String.class). Added ha...
Add detailed error logging to HuggingFaceAdapter for debugging 400 errors
Captures and logs the actual HF error response body instead of just status code.
Switch HuggingFace to router.huggingface.co (api-inference is deprecated)
HF returns 410 on api-inference.huggingface.co with message to use router.huggingface.co instead.
Use HuggingFace OpenAI-compatible endpoint with model in request body
HF's /v1/chat/completions endpoint takes the model ID in the JSON body, not in the URL path. Switched from per-model URL routing to standard
Add model count to provider list, switch HF to router endpoint
- Include modelCount in provider list GET response - Switch Hugging Face default base URL to router.huggingface.co - Support both api-inference and router URL f...
Support enabling/disabling models via PUT /api/ai/providers/{id}
When the frontend sends a 'models' array of model IDs in the provider update request, models in the array are set active and models not in the array (belonging ...
Add POST **************** endpoint for sending chat messages
Receives user message, sends to AI provider via ChatOrchestrationService, returns complete response. Supports REST-based chat flow.
Return full decrypted API key in provider responses
Users need to see and edit the full key, not a masked version.
Add Hugging Face as dedicated provider type with custom adapter
- HuggingFaceAdapter handles HF's URL structure **************** - Model discovery via HF API (warm text-generation models) - Registered in ProviderAdapterFacto...
Add manual model creation, handle 410/404 in test, use discovered model for CUSTOM providers
- POST /api/ai/models endpoint for manually adding models - DELETE /api/ai/models/{id} endpoint - CUSTOM providers use first discovered model for chat test inst...
Normalize base URL to prevent /v1/v1 duplication
Strips trailing /v1 from base URL before appending /v1/chat/completions, so users can enter base URLs with or without the /v1 suffix.
Restructure test connection to discover models first, handle rate limits gracefully
- Model discovery (lightweight GET) runs before chat test (POST) - Rate limit (429) errors show user-friendly warning instead of failing - Auth errors (401/403)...
Implement model auto-discovery on provider test connection
Each provider adapter discovers available models from the provider API. Models are automatically saved to the database when Test Connection succeeds.
Use provider-specific test model instead of hardcoded gpt-4o-mini
Each provider type now uses an appropriate model for connection testing
Serialize entity IDs as strings to prevent JavaScript precision loss
CockroachDB unique_rowid() generates INT8 values that exceed JavaScript's Number.MAX_SAFE_INTEGER, causing ID corruption in the frontend.
Add OTK authentication support matching SecurityService pattern
- Add OTKPreAuthFilter to validate X-OTK header and resolve to *** session - Update SessionHelper to read from request attributes set by filter - Update all con...
مثل ما ترى الشحن؟?
كلّه يصل إلى مكان عملك لوحده ابدأي بالخطه المجانيه و اقرأي هذه الصفحة مرة اخرى بعد شهر.
