チェンジログ
何が新しいの?
プラットフォームのすべての改良 それが出荷される
· kamo-shared-library
Mortgage リードは、借り手ステータスの財務(収入、クレジット、購入価格、支払いのダウン、リファイ残高/キャッシュアウト)を運ぶ
既存の ******************** を表面化し、4 つの列を追加 LeadClaimMortgage;ワイヤーDTO(read/update/create)、履歴フィールドレジストリ、およびLeadService create+update を作成します。 これらは、CLAIMED/ESTIMATEDの借り手事実(検証済みのURLAからファイアウォール)であり、 借主ポータルから豊富なプレ-1003枚の写真を貸出します.
· SecurityService
プロセスメンバーは、新しい権利によって、org Bg +ゲートのようなアップロード
- 新しい ImageResizeClient は、SAME を通じてメンバーの背景アップロードを実行します orgの背景(POST ************************************************************************************************************ 結果を .webp として保存します。 - ThemeBackgroundController:新しい権利ですべての5つのエンドポイントを承認する — MANAGE OWN BACKGROUND IMAGES 会員様向け,************************ 別のメンバー(スーパーセット、神モードバイパス) ターゲットを解決する読み込み 管理者が他の人のイメージをリスト/保存できるように、メンバーのユーザー ターゲットメンバーのユーザー。 - 新しいGET /theme-backgrounds/active は、セッションメンバー自身のスライドショーを返す 全体的な背景層のイメージURL(empty => orgフォールバック)。 RoleRightsSyncService(新しい共有ライブラリが必要)を介して起動時に自動で表示された権利 CI クローン KamoInitializer の実行は必要ありません.
· kamo-internal
My-Profileの背景を新しい権利+メンバー/orgスライドショーでゲート
- MANAGE OWN BACKGROUND IMAGES による「背景とテーマ」セクションをゲート メニュー (その他) 背景管理者を聞かせてください。 別のメンバーのプロフィールを開きます。 - 各背景の isInSlideshow フラグで org-vs-own を選択 (org => どれもアクティブ、所有 => 全てアクティブ) — スキーマの変更なし、フェッチのヒューリスティック 今、スライドショーが役立つものに合わせてアクティブな画像からトグルを導きます。 - OrgSlideshowLayerは、メンバー自身のアクティブな背景を好む (GET ************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************ orgの背景。 新しい薄い/activeプロキシルート.
· kamo-shared-library
Add 所有/その他背景画像の権利(一般グループ)
MANAGE OWN BACKGROUND IMAGES(165)と****************を追加 (166) RoleRightType、ServiceType nullに、一般設定に上陸 グループ(STATE LICENSING * OWN/ALL優先) パーメンバーをゲート 私のプロフィールの背景画像機能。 付録のみ、変更されていないバージョン.
· SecurityService
融資の借主の書類が全て受領した時に、所定の貸主を通知
Fires LOAN DOCS READY LO は、借り手DOC COMPLETE と一緒に満足のポイントで。 ローンファイルでLOを解決 → メニュー → → メンバー 完全に収集される融資、割り当てられたLO、および再解決可能な電子メールに自己保護される.
· kamo-shared-library
LOAN DOCS READY LOの正式なテンプレート — ローンのドキュメントがすべてにあるときに割り当てられたLOに通知します
· kamo-internal
ローンオフィサーを原始者セクションから取引に割り当てる
読み取り専用ローンオリジテーターセクションには、ローン・オフィス・ピッカー(またはメンバー)があります。 /members/names を経由して、PUT ************ を呼び出します。 トランザクションレベル(すべての子ローンによって継承)。 割り当て時にアプリを再フェッチする ライブプロジェクションは、LOの名前/NMLS/state-license を即座に反映します。 隠し 一度 冷凍(乾燥)。 これにより、システム管理の発信者全体が操作可能になります。 割り当てを設定する方法がないので、LOフィールドは常に空のプロジェクトをした。 (i18n パスを終了し、セクションの既存の通知にマッチする新しい UI 文字列。) 確認済み: tsc --noEmit はきれいです.
· kamo-internal
クラウドメールアクセス用のプロバイダ構成フィールド
設定を追加すると、EmailService のリゾルバがクラウドを認証する メールボックス: - Googleワークスペース:ドメインワイドデリゲーションIMAPのサービスアカウントキー(JSON)。 - IceWarp:メールホスト、サービスメールボックスパスワード、輸送セキュリティ。 - 交換(オンプレミスBASIC/NTLM):メールホスト、サービスメールボックスパスワード、輸送 セキュリティ.
· EmailService
OAuth2 (XOAUTH2) で IMAP/SMTP を介してすべてのクラウドプロバイダーのメールをルートする
クラウドプロバイダー(Microsoft 365、Exchange Online、Google Workspace、Zoho、IceWarp) **************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************** それらのためのIMAP/SMTPの資格情報がポップアップしたので、すべてのフォルダー/メッセージはスレッドを読みました MailboxNotConfiguredException -> "email not configure" 画面 (例: org) M365のオプション KamoMail は、唯一の資格情報を受け取るためだけ働いた (内部のドヴェット)。 今、すべてのプロバイダは、IMAP / SMTPパスを介して流れます。 カモメールは変更されません。 - MailCredentials:フル接続仕様************************ - ImapStoreFactory + EメールSmtpService: SASL XOAUTH2(native com.sun.mail)または基本 仕様ごとのauth;STARTTLSは(fail-closed)要求されるので、トークンはクリアテキストを転送しません。 - MailProviderResolver:/providerのクレデンシャル配線+メンバーのデフォルトメールボックス+ OAuthトークンが更新されます。 M365/Exchange-Online は、アプリ専用のクライアント認証トークンを使用します。 (outlook.office365.com) メニュー から得られるテナント mailbox ドメイン; Google はサービスアカウントドメイン全体の委任を使用しています。 Zohoは、 保存された OAuth トークン; IceWarp/on-prem Exchange は、プロバイダの config から基本的な auth を使用します。 - EメールImapService:RFC 6154 SPECIAL-USEによるSent/Draftsを解決し、土地を送った プロバイダーのネイティブフォルダ(Gmail [Gmail]/Sent Mail、Exchange Sent Item) - ProviderController: 暗号化された configJson にパーシスト config-form フィールド トークンを採掘することなく、リスト能力を優先的に低下させる。 - クラウドプロバイダから投げるRealtimeNotifierスタブを削除(ポーリングカバー) リアルタイム; 押し webhook の赤外線無し。 M365/Exchange-OnlineはアプリケーションIMAP.AccessAsApp + SMTPを必要とします。 SendAsApp 管理者 オンラインで交換の同意と新サービス原則(メールボックスごとに調整可能).
· kamo-internal
アカウント文書タブからvaultアップロードをディールスコープ
アップロードダイアログでは、オプションの「ディール」セレクター(アカウントの) トランザクション; 1つのスタンプローントランザクションを選択すると、時間に敏感なドキュメント(クレジット) 報告書、銀行明細書)は、その取引に拘束され、その融資を満足させるだけです。 「アカウント全体」は、ID ドキュメントをタイムレスに再利用します。 完了する トランザクションスコープのドキュメントモデルエンドツーエンド。 確認済み: tsc --noEmit はきれいです.
· SecurityService
Vault のアップロードは、ドキュメント (loanTransaction) を扱うことができます ログイン
Vault のアップロードはオプションのローントランザクションを受け入れます Id にスタンピング MemberDocument は時間に敏感な doc (クレジット レポート/銀行明細) をバインドできます 特定のトランザクションに — 満足度ガードは、その取引にのみ適用されます ローン。 Omitted =アカウントタイムレス再利用(変更なし)。 会員ドキュメントDTO に面した。 確認: mvn はクリーンにコンパイルします.
· kamo-internal
パーデバイスの背景スイッチ — プレーングラデーションまたはorgフォトスライドショー
2 icon スイッチの右(試験丸薬の下)を追加します。それは丸薬に上昇します 試行が終了したら、コンソールの背景を選択します。 - プレーングラデーション(デフォルト、最高のパフォーマンス) — 既存のoklab-blobバックドロップ。 - Orgフォトスライドショー — ログイン/登録サイトと同じテーマアセットを再利用 使用: <themePath>/json/config.json の背景イメージカウント → <themePath>/img/bg/{n}.webp, 404sの低下とクロスフェードで積み込まれた(尊敬は、魅惑的な感情を好む; 画像が解決しない場合は、プレーンフィールドに戻ります。 選択は localStorage (useBackgroundMode) の PER DEVICE に保存されます。 server-side はローカルにとどまるべきレンダリング/perf の選択だからです。 ザ・オブ・ザ・ 共有バックドロップは、それが(ホーム + 設定); 家庭に命を切り替えます。 詳しくはこちら アイコンにはツールチップがあります。 new home.background.* 文字列は辞書に出荷されます.
· SecurityService
初期 Loan Estimate (Reg Z/TRID) で発信者スナップショットを凍結する
原始者のライフサイクルを完了: 共有されたresolveProjection()がBOTHをフィード ライブ読み取りプロジェクションとフリーズ(ドリフトなし)。 INITIAL LE 開示を発行する set, MortgageDisclosureController は、開始された LoanOriginator を凍結します。 — キャプチャ WORM の行に映し出された LO + org + ステート ライセンス、および stamps は凍らせます 凍結状態(暗示的;@PreUpdateガードブロック後の変更)。 この後、 org/LO は、借り手が発信した人物を決して変更しません。 確認: mvn はクリーンにコンパイルします.
· kamo-internal
トランザクションファーストパイプライン — PrimeReact 拡張可能な行
フラットローングリッドをPrimeReact DataTableで置き換える TRANSACTIONSが開始される IN PLACEをメンバーのローン(ダブルクリックドローダなし)に展開し、 スチュワードは特定のローンを直接開きます。 親の列:トランザクション#、取引ステータス、 Borrower(s), Loans, Target Close;子行: Loan #, Borrower, プロパティ, Amount, ステータス、オープン。 Orphanローンはシングルローンの行としてレンダリングします。 検索、ステータスフィルタ、 CSVエクスポート、新規、およびボード/HMDAエントリーポイント。 プライムリアクト10(MIT) コミット リファクタ設計仕様。 検証済み: tsc --noEmit + 両方クリーンビルドします.
· kamo-internal
試用丸薬を右上に追加(カラースワップNavPriピル)
マストヘッドの状態のストリップの試験ラインを保ち、顕著な丸薬を再追加します 右上にあるので、orgの試用モードは明らかです。 NavPri が拡張されました 塗りつぶし/テキストカラーを交換したトライアルピル(プライマリ背景、白) 同じ********************のラベルを使用してテキスト/icon);示される スタッフ(TEAM MEMBER)のみの資格取得.
· kamo-internal
ドラッグしながら「インサート」をライブ, だけでなく、ドロップツースワップ
以前は注文はドロップでのみ変更されるため、スロットにスワップとして読み込まれます。 ドラッグするとリストリフローがライブされます。dnd-kit onDragOver はドラッグを移動します。 hoveredオプションのスロット(arrayMove)へのオプションなので、メンバーは正確に表示されます。 他の人の間で着陸する場所。 useHomeLayout.move は注文 ref を進めます 厳密にはドラッグオーバーイベントを連続して正しく構成し、 フラグを保存して、ライブプレビューは書き込みをスキップします。 最後の注文は一度に主張します 新しい commit() でドロップします.
· kamo-internal
アプリケーションビューのシブルランスイッチャー
トランザクションは複数のローンをグループ化できます。アプリヘッダーは、スイッチャーがジャンプするようになりました 取引の兄弟ローンの間(シングルローン取引のための隠された) パイプラインを介して到達可能。 確認済み: tsc --noEmit はきれいです.
· kamo-shared-library
LoanFileDTO.loanTransactionId(アプリビューはその取引を知っています)
/applicationsビューが/switch siblingを表示できるように、ローンのトランザクションを表面化 ローン。 確認:mvnはきれいに取付けます.
· kamo-internal
メニュー (FE型)
パイプライントランザクション # カラムのバックエンドフィールドをミラーリングします。 認証: tsc --noEmit クリーン.
· SecurityService
表面取引 トランザクションの数値SummaryDTO(パイプライントランザクション#)
パートランザクションパイプラインの行は、トランザクション番号を処理します。 認証: mvn はきれいにコンパイルします.
· SecurityService
オリジエータープロジェクションは、州ごとのライセンスを解決
ライブ発信者プロジェクションを完了: 割り当てられた LO の StewardLicense (NMLS MLO) SUBJECT PROPERTY の状態 (プロパティから.address.subdivision, ISO-3166-2 に正規化され、現在有効な 1 つは、 originorStateLicenseId を出力します。 確認: mvn はクリーンにコンパイルします.
· kamo-internal
ドラッグアンドドロップでランチャーパッドのオプションを並べ替え、メンバーごとに保存
ドラッグすることで、ホームオプションを再オーダーできるようになりました。 会員1名につきサーバサイドを永続化(リロードを存続し、各メンバーに追随する) デバイス) 同じ generic ui-preferences を介して nav レイアウトの使用を保存します。 — 新しい `homeLayout` は、注文されたオプション ID を保持するキーです。 - useHomeLayout(availableIds) は保存された順序を荷を積み、それを結合します 現在、関連するオプション(追加オプション、削除されたオプション)、およびパーシスト 楽観的で非バウンスされたPUTで再オーダー メニュー - dnd-kit DndContext:マウスセンサー(5px)+タッチセンサー(250ms) そのため、クイッククリックは、プレスドラッグ中にカード/サブアイテムが開きます リアレンジ(ポインターのみ、ライブナフのような)。 ドロップでコミットを注文する ドロップターゲットリング。 特徴カードはドラッグ可能な={false} なので、ネイティブリンクドラッグ dnd-kit と戦わない.
· kamo-internal
材料を最初のタブ+デフォルトのランディングにします。 概要を削除
概要タブ削除。材料は最初にあります。 /marketing インデックスが最初にリダイレクトされる アクセス可能なタブ(デフォルトでマテリアル)なので、誰でもマテリアルでマーケティングランドを開くことができます.
· SecurityService
ライブ発信者プロジェクション — org + 指定された LO を読み込みます
GET /mortgage-apps/{uid} が LIVE をオーバーレイしました。 行が凍結されていない限り(読み取り、保存されません)にコンパイル: org name/NMLS/address から 組織・貸役者名・NMLS・チームメンバーASSIGNEDから ローンの取引(User.EmbNameFull.formatFull()、NMLS経由の法的名 会員.nmlsId 階段の手入力された身元をクリアする — セクションはのみを反映している 真実の源。 凍結した行(Itial LE が発行)は、WORM のスナップショットで、左は非接触です。 完全な投影のための維持: 状態のSteewardLicense (主題を負って下さい app グラフの state と、初期の LE 発行時のフリーズトリガー.
· kamo-internal
Loan Originatorセクションは読み取り専用/システム管理
Loan OriginatorカードはもはやURLA §9データ(複製)を手書きしません ******************** 再キャプチャされました。 読み込み専用をレンダリングします。 初期ローンの前に割り当てられた融資役員+ orgのライブ投影 見積もり、その後、凍結された昇降スナップショット(frozenAt/frozenState/source) LoanOriginatorDTOに今すぐ登録してください。 編集可能なインプット+非バウンスパッチOriginatorを削除 オートセーブ。 バックエンドのプロジェクション/フリーズ配線の土地(SecurityService).
· SecurityService
取引レベルのローンオフィスの割り当て+取引番号
secureTransactionForApp が org-unique トランザクション番号 (TXN-<uid>) を押下しました。 メニュー + PUT /mortgage-apps/transactions/ {uid}/loan-officer は、取引の割り当てられたローンオフィサー(Member.id、継承)を設定します。 すべての子供のローン) — システム管理を駆動する単一のソース LoanOriginator projection/snapshot (originator は手渡されない)。 オペレータ- ゲート、org-scoped.
· InitializerService
Originator/transaction-first カラム (@Order 90)
Additive nullable カラム + MLOS の org-unique トランザクション番号インデックス 原始者/トランザクションレファクタ:mlos loan transaction(transaction number +) lock lo *), ローン originators (frozen at/frozen state WORM マーカー), mlos member document (loan transaction id 取引バインド)。 免責事項.
· kamo-shared-library
Originator/transaction-firstスキーマ — LOの割り当て、WORMのフリーズ、取引スコープ付きドキュメント
システム管理のoriginator +トランザクション優先レファクタ(spec)のバックボーン 2026-07-08: - LoanTransaction:トランザクション番号(org-unique)+割り当てられたLoanOfficerMemberId (+ 監査) — トランザクションレベルの LO の代入により、発信者を誘導 投影、すべての子融資によって継承される。 - LoanOriginator: 冷凍/frozenState + @PreUpdate WORMガード — 発信者 初期 Loan Estimate まで、割り当てられたメンバー/org の LIVE 予測 問題(Reg Z / TRID)、その後、不変な開始スナップショット。 LoanOriginatorDTOの特長 凍結するAt/frozenState/source (LIVE|SNAPSHOT) を公開します。 - 会員文書: ローントランザクションId 取引バインド — 時間感度 vault doc (クレジットレポート、銀行明細書) はトランザクションスコープです。NULL = account-timeless。 既存のFreshnessPolicy (NOT重複) によって支配される時間有限性滞在。 投影/フリーズ/代入ロジックは、SecurityService に住んでいる (これは両方に依存する) donotmodifyとmlos)、ここにはありません。ロックされたコアはmlos-decoupledにとどまります.
· kamo-internal
Vendorに製品フィルター依存を追加
/leads フィルターバーにプロダクト フィルターを、すぐに右加えます ベンダー フィルター。 Status/SubStatus のペアのように振る舞います: 無効化されるまで ベンダーを選択、そのオプションは、選択した製品に属する製品です ベンダーは、ベンダーが変更したときにクリアします。 クライアント側フィルタ 既に存在している述語およびフィルター状態;このワイヤーは低下を上げます.
· kamo-shared-library
共有 AusEngineClassifier — §8.2 エージェンシーマッピングの真理の1つのソース
プログラム→エンジン、ラン→エンジン、決定→ゲートマッピングはローカルに メニュー 資本市場ロックステージAUSハードストップ 同一の分類を必要とし、公正なゲートは2つを持っていません ドリフトできるコピー。 3つの純粋なマッピングを抽出する メニュー (静的、排気スイッチ = コンパイル強化された完全性/§8.2ドリフトガード)。 価格の決議者は現在委任 それに; 資本市場の LockStageAusGate は同じを使用します。 追加のスキーマはありません.
