コンテンツへ移動
KAMOUniverse

チェンジログ

何が新しいの?

プラットフォームのすべての改良 それが出荷される

  1. · kamo-internal

    DNSセットアップUIでTXTドメイン所有権レコードを表示する

    - DomainData/DnsStatus: 認証トークン、所有権認証、タイプフィールドを追加 - AliasStatusTable:コピー ボタンが付いているCNAMEのテーブルの上のTxtOwnershipCardを、示して下さい indigoの保留/緑の確認されたスタイリング;CNAMEの証明された計算からのTXTをろ過して下さい - ManualDnsGuide: 確認を受け入れる トークンプロップ; TXTレコードをステップ3aとして示します インラインコピーボタンでCNAMEレコード(ステップ3b)の前に - DnsProgressView: domain.verificationToken を ManualDnsGuide に渡して下さい

  2. · SecurityService

    Generate TXT verification token on domain create, check in verify-dns

    - createDomain: generate 32-char UUID token and store via setVerificationToken - verifyDns: check _kamo-verify TXT record for kamo-site-verification=<token> - TXT verification counts toward requiredTotal/requiredVerified - Once ownership_verified=true, cache result so member can remove TXT record - CNAME statuses now include type="CNAME"; TXT status includes type="TXT"

  3. · InitializerService

    Add verification_token and ownership_verified columns to org_domains

  4. · kamo-shared-library

    DNS TXT レコードによるドメイン所有権検証を追加

    - OrgDomain: 検証トークンと所有権認証フィールドを追加 - DomainService: setVerificationToken() と setOwnershipVerified() を追加 - DomainDTO: API 応答で検証トークンと所有権を検証 - DnsStatusDTO:CNAMEステータスからTXTを区別するためにタイプフィールドを追加します

  5. · kamo-internal

    スティッキーヘッダ、更新されたエイリアス、常に見えるプレーン英語DNSガイド

  6. · SecurityService

    Update required aliases — add app, capcha, docs, sign; remove legacy

  7. · kamo-internal

    常に所有者にDNSボタンを表示し、ドメインフローを変更

  8. · kamo-internal

    セットアップ/ dns を経由して orgId を渡します

  9. · SecurityService

    Allow cross-org domain management by verifying user ownership

  10. · kamo-internal

    /setup/dnsページとドメイン設定フローを/networkに追加

    - 2相流れの新しい /setup/dns ページ: ドメインエントリ その後 DNS 60秒の自動ポーリングとSSL確認 - マニュアルDnsGuide:すべてのために、利用可能なステップバイステップのDNS指示 レコード名とターゲット値のコピーボタンでスキルレベル - AliasStatusTable: ライブ・パー・エイリアス CNAME 認証ステータスと 検証/終了/エラーチップ/オプションバッジ www - DnsProgressView:フェーズインジケータ(DNS → SSL → Ready)、進捗バー、 カウントダウンタイマー, 今すぐチェック ボタン, 成功状態への自動利点 - DomainEntryForm: wwwのトグルとプレーン言語UXのドメイン入力 - /networkページ: 未確認のカスタムでorgsの Enterボタンを無効にします ドメイン; 設定 ドメイン ボタンを表示 所有者に必要な設定

  11. · SecurityService

    Add /setup/dns backend — one-domain enforcement, SSL probe, new aliases

    - Enforce one custom domain per org in POST /api/security/domains - Add capcha, docs, sign to standard aliases; remove legacy aliases - Update verify-dns to track required vs optional CNAMEs, auto-trigger HTTP seeds to Traefik logs when all required CNAMEs verified, and HTTPS-probe for SSL confirmation (marks sslConfirmed on parent domain) - Add SslProbeService with triggerHttpSeed() and probeHttps() methods - Expose domainSetupComplete per org in GET /api/security/org/my-networks

  12. · InitializerService

    Add ssl_confirmed and ssl_confirmed_at columns to org_domains

    Adds idempotent ALTER TABLE statements to provision the two new columns needed for DNS setup SSL confirmation tracking.

  13. · kamo-shared-library

    SslConfirmed/sslConfirmedAt フィールドを OrgDomain と DomainDTO に追加する

    2つの新しいフィールドを OrgDomain のエンティティティティや DomainDTO に追加して SSL を追跡 自動認証サービスの問題の後の証明書確認ステータス 証明書。 また、 DomainService に setSslConfirmed() ヘルパーを追加します.

  14. · kamo-marketing

    クライアント側チェンジログの検閲を削除 — バックエンドで処理

    単語の交換と秘密の赤字が変更ログSanitizationに移動 サービス (SecurityService) なので、DB ストレージと翻訳の前にサニタイズが起こります。 フロントエンドはテキストに触れる必要はありません.

  15. · SecurityService

    Move changelog word replacement to backend before translation

    Text replacements (Docs→Docs, Meet→Meet, etc.) and secret name redaction (K8s secret names→***) were previously applied client-side in ChangelogClient.tsx, meaning the raw sensitive terms were stored in the database and transmitted to the translation service — so translated records could expose internal names in other languages. Both lists are now applied in ChangelogSanitizationService before the commit is persisted. replaceText() covers titles; sanitize() covers descriptions (strip-patterns run first, then replaceText). The frontend no longer needs to do any censoring.

  16. · kamo-internal

    ストレージのアドオンを数量スライダーで置き換える

    追加ストレージは、シンプルなオン/オフではなく、使用ベース($4/25GBブロック)です。 アドオン スライダ(25GBの0-1000GB)でトグルスイッチを交換 ステップ) 数値入力フィールドと。 コストダウンがストレージをそのまま表示 別のライン項目。 PlanSelectionには追加のStorageGBが含まれています 従ってメーターで計られた請求をセットアップするバックエンド.

  17. · kamo-internal

    ワイヤー・ビリングマネージャーとリレーションマネージャー 実際のバックエンドへ

    BillingManager(アカウント課金タブ): - 実際のStripe-backedの支払方法の100%のローカル州のモックを取り替えて下さい billingApiによる管理 - マウント上のGET /api/billing/payment-methodsから支払い方法を読み込む - 支払い方法フローを追加する createSetupIntent → StripeProvider + PaymentMethodForm → 確認カード設定 → 添付ペイメント方法(必須) PlansBillingTabへの流れ - デフォルト設定は、******************** で最適化 星のアイコンと列ごとの機内スピナー - 確認ダイアログでbillingApi.deletePaymentMethodを使用して削除します。 デフォルトのカード削除はツールチップでブロックされます - 既存のカードブランドアイコン(Visa/Mastercard/Amex/Discover) SVG アセット; 未知のブランドのための一般的な CreditCard アイコンのフォールバック - Skeletonのローディング、再試行、スナックバーのフィードバックが付いているセクション間違い 関係マネージャー(アカウント関係タブ): - GET /api/security/org/my-networks でローカル状態を置換 - ネットワークの分類:isOwner=false → Parent Networks (ユーザを構成) isOwner=true → Child Networks (ユーザーが管理する) - アバターの初期、orgのタイトル、タイプ/ドメインメタ、およびロールチップを表示 - 利用可能な場合の org ドメインへのプロファイルアクションリンク - ツールチップで無効なアクセス権アクション(org管理者による管理) - 概要の破片は生きている親/子供の計算を示します - 追加/削除は意図的に読み取り専用です。 情報アラートはネットワークに指示します 関係管理ページ(バックエンドのCRUDエンドポイントが存在しません)

  18. · KlusterServices

    Restore bergamot with working model sources and correct image

    - replicas: 1 - Init container (alpine): downloads 4 pairs from data.statmt.org (tarballs for enes/enfr/ende/enpl) and 2 from firefox-translations-models GitHub LFS (individual .gz files for enru/enar) - Image: mozilla/translation-service (proper HTTP server, was WASM library) - Port: 8080 via PORT env var (service defaults to 8000) - Health probes: TCP socket (service has no /health HTTP endpoint) - Remaining 7 locales (pt/it/uk/tr/ro/id/vi) fall through to LibreTranslate

  19. · kamo-internal

    ライブKamoCRMサブスクリプションダッシュボードでmock statsページを置き換える

    /settings/account?tab=statsを完全に有線、読み取り専用インサイトに再構築 ダッシュボード。 すべてのモックデータをBillingServiceに並行して呼び出します 既存の billingApi クライアント。 レイアウト: - トップ2-colグリッド:プラン概要カード(プラン名、ステータスバッジ、座席数) 請求サイクル, 期間, 警告をキャンセル, 機能リスト) + 請求の概要 カード(次の請求書金額、単価、アクティブアドオン、クレジット残高、支払い) 最後の方法 4) - フル幅の使用法セクション: 1メートルの進捗カード(電子メールが送信され、電子メール 保存、ファイルストレージ、文書)、色分けされた進捗バーが派生 プラン機能の限界から-70%/90%のしきい値の緑/warning/error - 全幅の請求書履歴テーブル:請求書番号、期間、ステータスチップ、 subtotal/tax/total、PDFのダウンロードリンク;最大20最新請求書 データ: getCurrentサブスクリプション、getAvailableプラン、getCurrentUsage、 getInvoices、getCreditBalance、getPaymentMethods - Promise.all ですべて セットアップ そのため、各セクションはエラー時に独立して劣化します。 MUIスケルトンローダー/ 取得中のセクション.

  20. · kamo-internal

    プランフローのエンドツーエンドを選択

    - PlansBillingTab ダイアログ(プレースホルダーの置換) にワイヤ プランの計算機 - ページロードの課金APIから利用可能なプランをフェッチ - ハンドルプランの提出:新しいサブスクリプションを作成するか、既存の更新 - サブスクライブ前の支払い方法を要求する(支払いを追加するリダイレクト) - 提出時にストライプ処理メッセージで読み込み状態を表示 - 計画コンテキスト(現在の計画、サイクル、座席、アドオン)を計算機に渡して下さい - CreditMethodForm を修正し、代わりに clientSecret を prop として受け入れる Stripe Elements 内部へのアクセス

  21. · kamo-internal

    ルートKamoCRMのorgのための計画と請求タブを隠す

    KamoCRMの所有者は、費用なしですべての機能を持っています — 彼らはすべき 請求タブが表示されません。 タブは条件付きでのみレンダリングされます チャイルド組織(組織.hasParent が真の場合) チャイルド orgの所有者は、そのorgの請求を参照してください。メンバーは、に基づいて請求を参照してください 委任構成.

  22. · SecurityService

    BillingService を追加して、パブリックプロジェクトを変更

  23. · kamo-internal

    プラットフォーム間でStripe課金システムを統合

    - すべての請求のための完全なTypeScriptタイプを持つ新規請求Api.tsクライアント エンドポイント(サブスクリプション、決済方法、請求書、クレジット、使用方法) 設定、管理者) - 新しいストライプ要素コンポーネント: StripeProvider、PaymentMethodForm、 完全な費用の故障、容積の割引および束が付いている計画の計算機 - PlansBillingTabを実際のStripeの統合と書き換えて下さい:計画管理、 ストライプ要素の支払い方法、請求書履歴、クレジット残高、 使用法のメーターで計ること、請求の委任の構成、チーム メンバーの課金のステータス - アップデート機能プランベースのゲーティングで管理:ロックアイコンとアップグレード 現在のサブスクリプションプランに含まれていない機能のCTA - アカウント設定から請求タブを削除(会員ページへ移動) - インストール@stripe/stripe-jsと@stripe/react-stripe-js

  24. · BillingService

    Initial BillingService — Stripe-integrated billing for KamoCRM

    Complete Spring Boot service for managing KamoCRM billing via Stripe: - Stripe Customer, Subscription, PaymentMethod, Invoice lifecycle management - Credit system with ledger auditing (Stripe Customer Balance) - Usage metering for KamoMail and DocManager (daily cron sync to Stripe) - Billing delegation (ORG_PAYS_ALL / MEMBERS_PAY_OWN modes) - Configurable delinquency enforcement (SOFT_LOCK, HARD_LOCK, OWNER_FALLBACK) - Stripe webhook processing for real-time state sync - Stripe Price/Product auto-creation from subscription catalog - Full REST API: customers, subscriptions, payment methods, invoices, credits, usage, config, admin endpoints - K8s deployment manifests + Forgejo CI/CD pipeline - Internal-only service (no IngressRoute), accessed via APIService gateway

  25. · APIService

    Add Stripe webhook forwarding and billing API gateway routing

    - POST /api/billing/webhooks/stripe receives Stripe webhooks and forwards to BillingService with Stripe-Signature header preserved - /api/billing/** gateway routes proxy authenticated billing API calls to BillingService through the existing forward() mechanism - Adds billing.service.url and stripe.webhook.secret configuration - Adds stripe-webhook-secret k8s secret reference

  26. · InitializerService

    Add billing config initialization to KamoCRMPricingLoader

    Seeds a default BillingConfig (ORG_PAYS_ALL, SOFT_LOCK, 7-day grace) for the KamoCRM organization during pricing loader startup. Supports the new Stripe billing system.

  27. · kamo-shared-library

    Stripeインテグレーション用の課金エンティティティとリポジトリを追加

    新しいパッケージ **************** と 9 のエンティティティティ (BillingCustomer、BillingSubscription、BillingPayment) 方法, BillingInvoice、BillingCredit、BillingCreditLedger、BillingConfig、 BillingUsageSnapshot, BillingStripePriceMapping, 9 対応 JPAリポジトリ。 これらのエンティティティティティティティティは、ローカルでストライプ状態をミラーリングします 新しいKamoCRM課金システム.

  28. · kamo-marketing

    /calculatorと/pricing/offerをすべてのサイトマップに追加します。 i18n HTMLサイトマップラベル

    - app/sitemap.ts: /pricing/offer と /calculator のエントリを locale の代替に追加します。 - app/api/sitemap/route.ts: 価格計算機と特別オファーエントリを追加 -サイトマップClient.tsx:すべてのラベル/記述のためのt()のコンポーネント内のstaticSectionsを動かして下さい; プロダクトセクションの下の計算機リンクを加えて下さい - message/en.json: 38の新しいサイトマップリンクラベル/説明キーを追加

  29. · kamo-marketing

    製品、ブログ、価格設定、デモ、連絡先、計算機から残りの体文字列を完全に抽出

  30. · kamo-marketing

    機能から全身の文字列を抽出します。, 約, ホーム

君の宇宙は待ってる

数分で無料で開始できます。準備ができたらいつでも製品を追加できます。移行も新しいログインも不要です。

クレジットカード不要