Config.json からの themeRevision を使用して Cache-bust ロゴ URL
DynamicMetaLoaderがテーマを記憶するセッションの修正 config.json をフェッチした後、KAMO THEME CONFIG LOADED。 ThemeLogoが聴く そのイベントのために、 ?v={revision} クエリパラメータを再適用し、強制 ブラウザは、更新されたロゴをキャッシュされた...
直接アップロード/{domain-folder}/img/ ではなく、ステージングバケット
UploadLogo エンドポイントはハードコードされた 'sumtingwong' プレースホルダーに書いていました (unfilled set) の代わりに org の実際のパブリックテーマパス。 今のロゴ 直接****************またはロゴフル.{ext}に移動します。 - copyFolder は...
エッジノードのデフォルトからダウンした k2m1 ノードを削除します
k2m1 (10.8.2.1)は永久にダウンします。 フェイルオーバーリストでそれを残す 新しいOkHttpのタイムアウト火まで掛けるためにリトリートをアップロードしました。 デフォルト k1m1-only; k0m1コールドノードはフォールバックとして残っています.
OkHttpClient 経由で MinioClient に connect/write/read のタイムアウトを適用します
タイムアウトなし, ダウンされたサイト·レプリケーションピア (k2m1) 原因makeBucket と、pputObject は無期限にブロックする呼び出しをします。 ロゴのアップロードUIの「保存...」。 OkHttpClient が 30 秒を強制できるようになりました MinIOConfig で宣言されている...
Mailbox チェックボックスは org domains を読み込み、プロバイダードメインではなく
前の配線は /api/email/domains を読みました (email provider domains) テーブル)。 そのテーブルは、サードパーティの電子メールプロバイダでのみポップアップされます 統合はセットアップされます — カモメールのorgsで空の — なので、フォームは言った orgが完全に持ってい...
Unwrap {markets:[...]} は Attach ダイアログでエンベロープ
GET /api/security/Commerce-markets は { 市場: [...], メッセージ: "..." }, bare 配列ではありません。 Attach Commerce Market ダイアログが全体を扱う 配列として応答し、'a.filter で吹くことは関数ではありません' (そして偽りに...
OTK-redirect を proxy.ts にマージし、重複する middleware.ts を削除
Next.js 15 は、ミドルウェアとプロキシの両方が存在するときにビルドを拒否します。 ザ・オブ・ザ・ ミドルウェアに住んでいたOTKハンドオフリダイレクト — 任意のリクエストをリクエストを送信する ?otk=... を /validate にすると、OTK は実際に消費されます。 auth/access-rul...
Redis master と dedupe OTK POST から新しい***を読みます
Replica は、OTK 交換後、新鮮に書かれたセッションを見逃してしまった。 偽の失敗とログインリダイレクト。 otk が存在しているときにイントロ遅延をスキップします。 Strictモードの倍の台紙のための共有の機内検証の約束.
/platform/orgs の非配列応答に対する監視
非配列応答(空体、エラーエンベロープ、または{data: [...]}ラッパー) orgsの状態に着陸し、レンダーを吹き上げる 'e.map は関数ではありません。 Array.isArrayの背後にある状態の更新をゲートします。 {data: [...]}を許容する envelope と、インラインのエラーを inl...
/network を強制する ルール サーバー側
ターゲットが現在のセッションorgの場合、カスタムドメインSSLは拒否されません 確認、またはヒトターゲット会員は非アクティブです。 ドメイン設定を共有する OrgNetworkEnterPolicy 経由でmy-networks とロジック; ロードターゲット org と findByIdWithDomains によ...
宛先メンバーを要求し、orgメンバーシップを検証
Enter-as は、クライアントが提案したターゲットで、常に新しい *** を構築します。 会員の行; 不一致した org/member を拒否します。 セッションデバッグログを改善します.
Enter-as セッションは、ターゲット org セキュリティ プロバイダーとオプションの targetMemberId を使用します
Enter-as は、Redis セキュリティOrgId をユーザのグローバルセキュリティ provider から設定しました。 ログイン時に対象のorg FQDNチェーンから設定します。 その不一致はクロスドメインを作った hand-offs はソース/provider org のように見えます。 セキュリティを解決...
Enter-as OTK で /validate を開くので、対象の org セッションが適用されます
/api/validate と呼び出されない /?otk= にリンクされた ENTER; 共有ドメイン *** クッキーは、ソースorgを保存しました。 ミドルウェアを介して/validateに?otk=をリダイレクトする 任意のストレイリンク.
BFFリクエストのOTKからシステムユーザーセッションを解決
SystemUserConfigController と SystemUserCapabilityController は、 メニュー kamo-internal は Cookie なしで X-OTK を転送します。 セッションが見つからず、403を返し、正当なトップレベルの所有者のために。 EnterAsContr...
Enter-asはX-OTK BFF authからセッションを解決します
EnterAsController は読み取り専用です。 session 属性。 JSON から大きい INT8 の ID の文字列として targetOrgId を受け付けます.
POST /api/security/enter-as 用の BFF ルートを追加
/network 404 を収穫する非既存の次行と呼ばれるアクションを入力します。 他のセキュリティプロキシのような APIService へのリクエストを転送します.
プロキシシステムユーザー config API は APIService にルーティングします
設定ページは /api/security/system-user/* ではなく、次のハンドラを呼びません。 存在するので、アプリは404を返す。 Add セキュリティサービスに合ったBFFルート ForwardToApi を使用したエンドポイント(設定、付与、機能).
TeamMember はメンバーです。 bogus tm.getMember() 呼び出しをドロップします
TeamMember は JOINED の継承を利用しています。メンバーは、ネストされていないメンバーです。 フィールド。 backfill は tm.getMember() と呼ばれていました。 また、JPQLステータスフィルタをtm.teamMembershipStatus(the)に切り替えます。 存在しないtm...
メニュー プリミティブゲッター
isOrganizationOwner はチームメンバーのプリミティブブールなので、Lombok- 生成されたアクセサは isOrganizationOwner() ではなく getIsOrganizationOwner() です。 BillingGroupMemberService と LicenseService ...
KBメディア/articles API プロキシでクエリ文字列の重複を停止する
forwardToApiはブラウザリクエスト検索パラメータを既に追加しています。埋め込み ?query in the path は 2 番目の ? を生成し、上流 URL 解析を破った。 GET /api/kb/media が失敗し、リソースページがエラーを表示します。 より容易な診断のためのKbMediaBrowse...
部門別エンドポイントからチームメンバーのみを返す
インタラクションセンターは、基本メンバーレコードではなく、チームメンバーの行をリストする必要があります.
チームメンバーのみとの交流センター
NavTop Greeting はユーザがいないときにユーザ名に戻ります チーム専用リスト インタラクションセンターのコピーは、チームメンバーのワーディングを使用します.
Org管理者が他のメンバーアカウントページを開くことを可能にします
クライアントリダイレクトガードを継承する**************************** CONFIGURE SYSTEM、EDIT MEMBER ACCESS LEVEL、ALLOW PROMOTING MEMBERS、 組織の所有者、およびプラットフォーム管理者がアクセスするので、完全な管理者はバウンスされ...
設定とキャッシュバストのロゴ URL の後に ThemeLogo をリロードする
ThemeLogoは、セッションからkamo-logo-full-extを読みます。 config.json をフェッチするので、ロゴフルは誤った拡張機能を使用することが多い フルリロード。 config が適用されるとイベントをディスパッチし、 ThemeLogo でリスニングします。 他のテーマアセットのようなイメ...
ブランチタイプで許可されたアプリのサブスクリプションコンテキストを表示
課金サブスクリプションをロードし、アプリタブのようなメタデータを計画します。 行をグレーアウト デフォルトオンポリシーが有効でないと、インフォアラートが表示されます。 対象サブスクリプション.
サブスクリプションゲートをアプリのルートと機能APIに適用
AppAvailabilityInterceptor は、常に isAppEffectivelyEnabled を使用するので、 FORCE ENABLEDはサブスクリプションを尊重します。 FeatureController のシリアライズが可能 モデルフラグの代わりに同じゲートから、生DBのみ.
ゲートアプリは、サブスクリプションとプラン機能を有効にします
ストライプや取引を解決するために************を追加 サブスクリプションと一致するサブスクリプションプランサービスタイプ名への機能。 AppliedModelEnforcementService では、アクティブなサブスクリプション (または COMP) が必要です。 フルカタログ) FORCE ENABLE...
任意のCOMPサブスクリプションをAppsタブでフルアクセスとして扱います
すべてのorgsのためのPaymentMethod COMP、トップレベルのプラットフォームの所有者だけでなく、 そのため、無料の助成金を持つ子供orgsは、ロック解除可能なトグルを参照してください.
GET /subscriptions/current での取引サブスクリプションを公開
Stripe ミラー行が存在しない場合、org アクティブ コマースの解決 サブスクリプション記録(例えば、COMPの付与)、支払方法および プランの特徴 Fix 無料のプランでアプリの設定をgating.
Int64 org id を DNS 設定にリダイレクトする
POST /api/security/org: 再parsing ではなく上流 JSON を通過するので、 応答バイトはフルIDの数字を保持します。 createOrganization は生体を読み、 JSON がそれらを丸める前に org/member id digit 文字列を抽出します。 投稿ウィザード および...
デフォルトのテンプレートのコピーを org のプロビジョニング
宛先キーの明示的なソースプレフィックスを使用して、S3フォルダマーカーをスキップします。 テンプレートプレフィックスが空いているので、サイレント部分のコピーが空の場合に高速に失敗します globals.css にアクセスしません.
ノードを渡るユニオンリストオブジェクトは、キーセットを完了します
最初に到達可能なMinIOノードは空のリストを返すことができます。 ノードは、テーマなどの再帰的なコピーを破ったレプリカオブジェクトを保持しました テンプレートはpublic/default/から同期します.
