سجل التغييرات
ما الجديد؟
كل تحسين للمنصة، كما هو الشحن.
· kamo-shared-library
يضاف VENDOR CALLBACK RESOLVED event-type key (0.6a ingress)
· kamo-shared-library
مواصفات لسجلات تحديد الهوية - 42 مكررة (الحجر 0.5، شريحة 1)
New pkg com.kamo.z.shared.mlos.identity (the inbound-webhook routing key): LoanIdentifierType (42 first-class typed ids, each carrying Cardinality + Ownership; @Enumerated STRing; singleActiveTypesex derived from metadata) + لا أعرف + كيان تحديد الهوية (قاعدة البيانات؛ FK-by-id Long loan FileUid + denormalized organizationId, decoupled from locked LoanFile; write-once @PreUpdate guard throws on value/type/customSubtype change, only status turn allowed; @PrePrePersist normalizes issuer/subtype + enforces other Verified locally: mvn install BUILD SUCCESS, 49 MLOS tests pass (incl single-active overarching-guard test asserting the enum set matches the KamoInitializer partial-index DDL). KamoInitializer DDL: scan + 3 partial-unique indexes + other CHECK. RESOLVER + webhook ingress = the first new MLOSIdentifierService microservice (deferred).
· kamo-shared-library
ستيوارد فيدباك فلفل - يلتقط كل حكم مرفأ )الحجر صفر - ١١(
New pkg ************ append-only StewardFeedback ground-truth row (FK ai decision.uid; verdict CONFIRM/OVERRIDE/MODIFY; Reg-B-arange reasonCode; Value jsonb; is experimentLoan stamped at write time per doc12 §4.4; @PreFreoseback Recorder gated mlos.governance.enabled (default off -). zero blast radius). KamoInitializer DDL: scan + steward feedback indexes + FK to ai decision.
· kamo-shared-library
Immutable AiDecision WORMbookger + two-wall Decision Gate (keystone 0.3, slice 1)
New pkg com.kamo.z.shared.mlos. decision (greenfield decision see, never edits donotmodify): immutable append-only AiDecision (WORM via @PreUpdate guard; loanFileId is a Long FK to LoanFile.uid per doc01/gotchas, NOT UUID; supersession via superd row لا أعرف enums + AiDecision Repository (loan-scoped finders). DecisionGate = in-process two-wall library (legal wall ABSOLUTE/non-tunable; confidence wall tunable; non-tunable platform safety floor beneath) — config-only @Component, no repo dep, safe estate-wide. DEFERRED to dependency slices: DecisionInput (FKs the Phase-2 catalog), StewardTask/Orchestration State, legal registry, HMDA-firewall CHECK, ModelVersion FK. KamoInitializer DDL added (ai decision index + flagged DB WORM trigger needing CRDB v24.x).
· kamo-shared-library
بوابة عزل المستأجرين للحدث الخلفي (المادة 3)
خريطة الطريق 0.10: ************************ (الاسم المشترك للمستهلك الدائم) + يعود إلى تينانت (موضوع، orgId) مضاهاة الحكيمة التي تعكس تصفية الناموسيات النووية الصافية؛ وبالنسبة إلى Event الآن ترفض orgId غير الافتراضي (لا أحداث بدون مستأجر). MlosTenantIsolation والاختبار هو البوابــة القابلة للتنفيذ المتقاطعــة )بما في ذلك البوابــة الكثيفة: org ١٢ لا تضاهي أبدا org ١٢٣(. ويحصل مستودع MlosDeadLetter على مكتشف متجه من طراز org (حارس مركب من طراز Repo-layer org) إلى جانب المشغل المتقاطع. وينطوي كل ما في وسعه على حاويات " X-Internal-Auth " على نطاق التركة وأرجأ إلى حجر المفتاح الأصيل؛ ويتبع اختبار العزلة القائم على السمسرة الحية أول مستهلك ملموس.
· kamo-shared-library
Idempotency, DLQ + steward replay (Slice 2)
(أ) يضيف جوهر الموثوقية الذي يُدخله أي دفتر مستهلك من طراز MLOS إلى دفتر دفتر دفتر محفوظات مجهز بالاختراع (المستهلكون: الاسم + التصويب) + مقياس التسمية المميتة (MlosDeadLetterStatus) MlosEventEnvelope gains @Jacksonized for round-trip deserialization. New @Components share the mlos.outbox.enabled opt-in; repos are in the already-scanned package. أرجأت المنظمة الحية للمستهلكين غير القابلين للتداول إلى أول مستهلك ملموس لها.
· kamolos
Adopt MLOS transactional outbox (producer path)
Enables the Phase-0 event backbone in KamoLOS: adds com.kamo.z.shared.mlos.event to the @EnableJpa Repositories scan, mlos* config (mlos.outbox.enabled=true, MLOS EVENTS stream + dedup window, sweeper), and a producer-pathring wiving enque وتنشر شركة AFTER COMMIT بالضبط مرة واحدة مع الحدث الظرفي الذي يُدعى " ناتس - ماسغ - إيد " (Schema) (Mlos outbox event + indexes) ويُطبق بشكل منفصل بواسطة شركة KamoInitizer التي يديرها المستخدم.
· kamo-shared-library
حلقة خلفية لإطار المعاملات (Phase-0 keystone B)
درب المال/الاستجابة للمنتجين في شاحنات الأقرباء (أبداً edits donotmodify): MlosEventEnvelope DTO + MlosOutboxEvent outbox entity/repo + OutboxWriter (single-tx enqueue) + OutboxRelay (AFTER COMMIT hot-path + @Scheduled sweeper, publishes with Nats-Msg-Id windowsfConamNats Reuses the locked NATS Connection/JetStream beans. Opt-in via mlos.outbox.enabled (default off) so non-adopting services are unaffected. الأثر بالظبط = العلامة الخارجية للمعاملات أما شظايا الاستهلاك/التكرار + العزل المستأجرة للمستهلكين فهي الجزء 2/3.
· kamo-internal
تظهر طبقات البيانات لكل مرحلة EDT4 ocean mask + TRF2 markings
الآن قائمة ببطاقات اللوحة العالمية طبقات البيانات وإذ يشدّد على القناع المضاف حديثاً: قناع المحيط (الترابط البحري) تحت الماء، and TRF2 lane markings + runtime terrain grading under transport. الشكل الصافي/البيانات العلامات (STAGE LAYERS in types.ts) - no new i18n strings. إحصاءات ستيل/ريجين بالفعل السطح تلقائياً عندما يصطدم المثبت بـ EDT3.EDT4 / TRF1.TRF2.
· kamo-internal
زلّة الجمود السطحيّة + إستهدفْ "Regenerate N" على الصفحة
(أ) الطلقة المفاجئة للعميل تحمل الآن حالة تأهب (مستكملة/مفقودة)؛ سجّلْه من خلال API + SSE إلى الصفحة: يُظهر سجل الخدمات خط طازج لكل خدمة من الطوابق ويصبح زر البداية "إصلاح "إن" (=السرقة + مفقودة) عندما يكون هناك عمل مستهدف، أو "حتى الآن" - يُظهر تلميح الإطار العام كم من البلاط يحتاج إلى تحديث. البدأ مدفوع بالفعل على المضيف، لذلك الزر يحفز هدف Regen of exactly the stale/missing cells.
· kamo-internal
Universe world-generation admin page
مضافا إليها/مخططات/وحدات تحت إدارة المنبر - منبرها الخاص البطاقة + ثلاثة مراكز فرعية )المكتب، الخدمات، الإجراءات( - لبدء ورصد خط أنابيب "كامونوني" العالمي ظهر (Next API, platform-admin gated via the *** session, same rule as the حارس العملاء: - lib/worldgenNats.ts: one long-lived NATS connection + a status participantr الذي يُعطي آخر حالة في كل مرحلة من مراحل الدراسة (في الذكر + ريديس) يُعاد ترتيبها في حافلة في غرفة العمليات النشرات تبدأ الأوامر - التطبيق/الوحدة/الخدمات يحسب + قفل هيلد. POST a بداية أمر إلى وكيل K3m1. - التلميح/الوحدة/مسار الأشعة السينية للوضع الحي/الأحداث المفاجئة. المقدم (م.م.م.ع.م.م.م.م.ع) يعكس صفحة التشكيل: - استخدام Worldgen: One shared SSE stream (auto-reconnect) + start processing for all tabs. - لمحة عامة: العميل/المراقبة/الإكمال/الإطارات الإحصائية + خط أنابيب حي. - الخدمات: بطاقة غنية لكل نص - دور + ما يحققه، ولاية حية شارة، حانة/إكتملت، الحدث الأخير، وزر البداية أي دفعة تحمل القفل العالمي - الإجراءات: تشغيل خط الأنابيب الكامل أو مرحلة فردية (مع تأكيد) بالإضافة إلى نهضة Wiring: NATS URL added to the configmap; `nats ' client dependency added. K3m1 الوكيل + الفرز عن بعد يعيش في كتلة الكواكب؛ الخيوط في الترجمة القاموس نظف جميع الملفات الجديدة.
· kamo-shared-library
Add case-insensitive findByEmailEmail IgnoreCase
Emails are stored with inconsistent case (e.g. Sage@KamoCRM.com) and مساواة الـ(كوكروش دي بي) حساسة، لذا تجد (بي بريدل) مفقود على القضية وحدها تحتاج إلى فحص البريد الإلكتروني لاسترداد كلمة السر.
· EmailService
حسابات صندوق البريد ذاتي الوجبات من جهاز DB (الاسترداد المتحرك)
The app DB is the source of truth for which mailboxes should exist; KamoMail الحسابات تعيش في مستعملي خادم البريد الافتراضيين إذا فَقدَ البريدَ دي بي البياناتَ، صناديق البريد مفقودة على المُقدّم بينما تُبقي سجلات التطبّق. - Mailbox SelfHealService: on startup + daily, reprovision any KAMO MAIL app صندوق بريد مفقود من المستعملين الافتراضيين (كلمة مرور عشوائية جديدة مجهزة بالتطبيق). -مزامنة (مايل بوكس) (الإطارات (سينك) تضغط أيضاً على مقدم الطلب أيّ صندوق بريد مفقود، ليس فقط مُقدّم استيراد.
· kamo-internal
مجموعة/توصيلة بالنيابة عن صندوق بريد العضو المتحول
- مالك صندوق البريد الجاهز عضو من المحول عبر صندوق البريد النشط إلى The compose context (event + URL param). - الرسالة الجديدة/الرد/النسخة المفتوحة الأمامية لصناديق البريد الأعضاء المختارة: من قوائم التسربات تلك الصناديق البريدية للعضوية وإرسال/مشروع وثائق مصدق عليها كصندوق بريدهم (البريد الإلكتروني:boxId). - التركيب الذاتي لم يتغير عندما لا يكون هناك صندوق بريد عضو نشط.
· kamo-internal
*** في كل دورة من دورات خزنة بدلا من الكعك المشترك
"الجلسة التي عاشت في كعكة "بروسر المصدر، لذلك لا يمكن للكتاب الثاني (الشخصية) أن يعقد دورته. نقل الناقل إلى خزنة الدورة (لكل دور): - الدورة: المساعِدون المكسورون + غلاف جذب عالمي يعلق id as X-***-Token on same-origin /api calls, plus a one-time هجرة تخزين الكعك تم تركيبها عن طريق "دورة بوتستراب" في التصميم - ******** التوليد، الدورة/المعلومات، الدورة/الاستكمال، النقل، الاجتماع/البريد الإلكتروني. تولد (تيك) + تحصل على (كسيميد فروم) وتفضّل (إكس)... - لا يَعْدُّ api/validate a *** كوكي؛ يَعُودُ id and the /الصفحة الثابتة تخزنها في دورة التاب هذه. - استخدام أوسر إنفوس (UserInfo) + كُلّ العواطف على شبكة ويب سوكيت يَقْرأُ id from sessionStorage. -القطع يلتقط الضباب قبل تطهير المخزن لا يزال غير صحيح النطق يفتح الآن فقط / / / / / / ? (أ) عقد دورة " ريديس " (Rreis session created server-side, OTK handed to /validate)؛ تابوت جديد يحصل على دورته الخاصة والكتاب المقدس غير مربوط يزيل نظام " للحفاظ على الحياة " (Prev/ImpersonationBanner) الذي عفا عليه الزمن ولا تزال الأورام منفصلة حسب النطاق - دون تغيير.
· kamo-internal
الزر المُوحّد على الأعضاء
يُضيفُ a أعلى اليمين 'Impersonate' action on /tins/member/[id]، مرئي فقط عندما يُوقع في الدورةِ يَحْملُ نمطَ إلهِ (الهة النباتية) والهدف ليس ذاتياً أو جديداً يَتّصلُ بالجديدِ /api/security/impersonate، ثمّ يُبادلُ *** كوكي عبر طريق توك (/مقبول؟ يبقي (بريف) يحافظ على دوره الخاصه في (ريديس) الهوية (بانر) يخبأ الإسمين ويعرض (العودة) إلى حسابي (الكوكيزات ذات المصدر نفسه لا يمكن عقد جلستين حيتين في آن واحد). ستينغزفيو يكسب مكاناً اختيارياً في مجال القيادة.
· SecurityService
نقطة النهاية
POST/api/security/impersonate mints a fresh ***+OTK for an arbitrary عضو في جهاز الاتصال الحالي (أوغ)، مُدخل على جلسة المُكالمة أسلوب الإله يُسجلُ عضوَ الإلهَ مَعْدُ كما SUDO MEMBER ID ل مراجعة الحسابات نفس الدورة التي تُشكّل على شكل لوجّات تُبنّى كـ "إينتر آس كونترولر" لكن نفس المنظمة و إله عطوف بدلاً من عبور org.
· SecurityService
Return orgName + language in /user-info
حل اسم العرض org ولغة العضو المختارة 1 شفرة من دي بي حتى الكامو - الكون يمكن أن تظهر كل لاعب org + علم اللغة على اسمائهم حُلّت (ليس من الدورة) إلتقطهم على الفور.
· kamo-internal
Car KamoUniverse launch card + nav icon (gated ACCESS KAMOWORLD, OTK redirect to play.*)
· kamo-shared-library
يضاف الحق في كامورولد (145، GAMES) للوصول إلى الكاموونيس
· KlusterServices
K1m1 سجّل للصور يحلّ محل المتقاعد K0m1:5000 (نفس وثائق التفويض)
· KlusterServices
(أ) +فالكي، مساندة من طراز CockroachDB، حزمة القابلية للملاحظة
- الكون/: الفضاء + ResourceQuota, valkey-universe (AOF, hostPath k1m1), برمجة أحذية متحركة -الرصد/: قيم الخوذة المثبتة وضع السيناريو، (غرافانا) - CI: تطبيق الفضاء الكوني+فالكي في مرحلة k1m1 (أسقطت حزمة الناتو: 430d6 تم بالفعل إعادة ضبط الكم3m1 مع عزلة حسابية)
· KlusterServices
مضافاً إليه كغم1 + مهاجر مناظرة للشبكة المحلية
- الولاية: الإعلان/الالتحاق بأكثر من 192.168.4.x (k1m1=.22, k3m1=.36)؛ (واير غارد) سقط (ك3m1 كيلوغرام 10.8.0.1 تشابك مع إعلان (0m1) -العمل الداخلي + CI kubeconfig endpoints moved to LAN IPs. - CI: add K3M1 CockroachDB deploy section (needs K3M1 KUBECONFIG B64 secret).
· kamo-login
رسوم دفع رسوم الدخول بعد دخول
بعد أن نجّح (الألمانية أو اللائحة) يستهلك شيكات الطائرة التي تركها الأخت الكامو وأعاد توجيه المشتري إلى العلامة التجارية/الاختبارات؟ الخطة = الصفحة (الاستراحة) بدلا من تطبيق التقصير الوجهة طلقه واحده , البسكويت تم قراءته.
· kamo-register
سيارة مدفوعة الأجر؟
(أ) عندما يكون منشئاً لعضو من وكالة التجارة الدولية ذات التسعير المدفوع (التخطيط للأعمال التجارية) قم بإسقاط الـ "بيكس دومان" في الـ "بسكويت" عند اكتماله kamo-login consumes بعد أن يوثق المستعمل ويوجههم إلى / / subscribe (روي) نجاة من السجل - التحقق من -.
· kamo-shared-library
نماذج التوقيعات الإلكترونية الكانتونية (التدقيق + الدعوة)
يضاف نموذجان من نماذج البريد الإلكتروني الكانتونية على نطاق المنظومة يبذران في كل org: (خطى مكتب المدعي العام: {code}}}، {name}}) (يُدعى: {يُدعى} {يُدعى} {يُدعى} {يُدعى } {يُرسلُ} {يُرسلُ } } {يُرسلُ}} {يُرسلُ } } {يُرسلُ } } { امسحهم في قائمة (كانونيكا تيبلادل لادر) الرئيسية (إيميل سيرفيك)، (بريد فور أورغ) يلتقطها في أول رسالة Enables live OTP/invite التسليم من أجل تدفق التوقيعات الإلكترونية (كان من الأفضل تجنبا بدون النماذج).
· BillingService
قياس استخدام التوقيعات الإلكترونية + التوقيف الذاتي للمستهلك
#4 قياس: - EsignMeterSubmissionService (@Scheduled daily): aggregates API-origin التسجيلات حسب مدة العضوية؛ وتشمل الفترة الأولى 40/فترة، والبقية المقدمة كـ "تري ميتر إينتس" Idempotent via reportedToStripe + the usage-record UID as The MeterEvent identifier (Stripe-side dedupe). يحل اسم الحدث من سعر (إضافون) الحقيقي لـ (تراي) يطابق أيّاً كان قياس السعر المُلزم (يُحدّدُ الخطأ في تسميته). رقم 5 - ConsumerCheckoutService: Stripe checkout Session (mode=subscription) against the سعر خطّة جذر المنتج (+ خطّ مبالغة مُقَدَّمَة للعمل)؛ الاشتراك في الحساب (المصدر: PAID) + الاشتراك في الاجتماع + المحاسبة استحقاقات الإنجاز والبطلان. - قرار منح امتياز المستهلك: يصادق على المشتري بواسطة كعكة خاصة به*** (ريديس) - محاسب مستهلك لا أعرف -ويبوك سيرفيك) يتعامل الآن مع) . الإضافة/الضرورة إلى أن ينضم المستهلك؛ فالشحنة الحية تحتاج إلى بطاقة حقيقية.
· kamo-internal
Expose API SIGNATURE (E-Signature API) key scope
يُضاف نطاق تطبيق نظام المعلومات الإدارية المتكامل إلى مدير البرنامج حتى يتمكن الموظفون من منحه (ج) الأعمال التجارية أو تُحدّد إمكانية الوصول إلى الموقع الإلكتروني البرنامجي. الاستخدام خارج الشهر المتضمن يُخصّص كلّ توقيع.
· APIService
البوابة الإلكترونية العامة للتوقيعات الإلكترونية
تضاف /api/public/esign/** إلى المراقب العام: تصادق على مفتاح org API، يَتطلّبُ نطاقَ AI SIGNATURE، حدود سعرِ، ويَقُودُ إلى إسيج سيرفي المظروف الداخلي API (/api/esig/internal/**) مع X-Internal-Auth + X-Org-Id. يُصدّرُ سابقةَ مدخلِ الاشتراكاتِ.
· ESigService
المظروف البرنامجي الداخلي
- مشرف موقعي داخلي (/api/esig/internal/*): X-Internal-Auth + X-Org-Id Authed, called by APIService after it validates the API SIGNATURE-scoped key; يُعيد استخدام EsignEnvelopeService, tags envelopes EsignUsageOrigin. API - ******** **** الحصول على زيادة في حجم المصدر (العجز عن العمل) طريق الإشارة الآن متراً من أصل الظرف OTKAuthFilter bypasses /api/esig/internal (internal-secret authed, not OTK)

كونك ينتظرك
ابدأ مجانا في دقائق. أضف المنتجات كلما كنت مستعدا - لا هجرة، لا دخول جديد.
مجانا إلى الأبد - لا حاجة إلى بطاقة ائتمان