Use StringRedisTemplate to read OTK/session values stored as plain strings
The Next.js app stores OTK and *** values as plain strings in Redis. The default RedisTemplate uses JSON serializer which fails to parse them.
Resolve TypeScript errors in useEmailWebSocket hook
- Remove non-existent connectHeaders property from Client options - Replace client.active with client.connected for @stomp/stompjs compatibility
Add missing jakarta.mail.event imports and catch IOException in NATS handler
Match create button styling to existing global.css pattern
Use component={Link} with href, var(--color-primary) colors, and consistent sizing to match the existing Orders and Applications buttons.
Move create buttons to right side of pipeline tab toolbars
Remove duplicate left-side buttons where right-side ones already existed, and reposition newly added buttons to the right after other toolbar controls.
Give pipeline datagrid columns explicit widths with one flex column
Replace minWidth/maxWidth ranges with explicit width values so columns are properly sized for their data. Each grid has exactly one descriptive column with flex...
Remove toolbar margin gap between sub-tab row and datagrid
Remove mb:1 from toolbar wrapper in Commitments and Orders tabs, and add py:3px to the sub-tab panel for breathing room.
Remove padding from pipeline tab wrappers so datagrid matches sub-tab width
Seamless sub-tab and datagrid panel styling on pipeline market tabs
Remove the content Card wrapper for market tabs so there's no unnecessary panel behind the datagrid. Style the sub-tab row with rounded top / square bottom corn...
Remove sticky positioning from MemberHeader so form scrolls with header
The MemberHeader was pinned to the top of the scroll container with position: sticky, causing the form content to scroll underneath it. Now the header and form ...
Prevent pipeline detail pages from extending past viewport
Root Box changed from minHeight: 100vh to height: 100% with minHeight: 0 to match the leads view pattern. Content scrolls within the card, not the page itself. ...
Address review issues
- Validate intermediate steps when jumping forward via stepper - Pass warnings as query params instead of losing them on navigation - Revoke previous AI-generat...
Add auth check and sanitize input on POST /org
- Return 401 if no authenticated user (prevents orphan orgs) - Build Organization from allowed fields only (prevents mass-assignment) - Fix colors field name (w...
Restore full step component implementations
Replace stub step components with the complete implementations that include all form fields, validation, and UI logic for each wizard step.
Add proactive session extension to prevent timeout while user is active
The session monitor only extended the Redis session when TTL dropped to ≤5 minutes, and at that point silently auto-extended without showing the warning popup. ...
Swap My Account and My Branch buttons and reduce NavTop gaps
Swapped positions of "My Account" and "My {branch title}" buttons in the top nav, and halved all container-level gaps for tighter spacing.
Invalidate stale Redis キャッシュ不足している org ラベル フィールド
SecurityService 更新前のキャッシュされた org データは、 MemberTitleNonPlural フィールド これを検知し、新鮮なデータを再取得する カスタムメンバー/チームラベルは正しく表示します.
Include member title labels and shortTitle in org domain response
The /org/domain/{domain} endpoint was missing memberTitlePlural, memberTitleNonPlural, teamMemberTitlePlural, teamMemberTitleNonPlural, and shortTitle fields fr...
CORSを避けるためにNext.jsを通してすべての外部API呼び出しをプロキシ
キャッチオール/api/security/[...path]プロキシルートを追加し、更新 テーマ構成、FormAccountRecovery、FormPassportID、FormPersonalInfo、 FormRecoveryEnforcement は、直接の代わりにローカルプロキシを使用する api.kamoc...
Next.js によるプロキシ国 API およびテストモードの無効化
CORS による api.kamocrm.com への直接取得が失敗しました。 /api/countries を追加 プロキシルート(/api/org と同じパターン)と無効な USE TESTING MODE です.
Forgejo ワークフローでアクションリファレンスの GitHub URL をすべて使用
短い refs (例: action/checkout@v4) は解決できません フォージジョランナーズ kamo-internalの作業形式に合わせました.
Use JdkClientHttpRequestFactory to support PATCH method forwarding
The default RestTemplate uses SimpleClientHttpRequestFactory (HttpURLConnection) which doesn't support the PATCH HTTP method, causing branch-titles save to fail...
Move loginOrgOpt declaration outside try block to fix scope error
The variable was declared inside the first try block but referenced in the second try block for parent branch title resolution.
Move useUserInfo hook into OrgStep component to fix build error
getParentBranchTitleNonPlural was referenced in OrgStep but only destructured in the parent CreateNetworkPage component.
Resolve session timeout maintenance system not running
Root cause: sessionMonitor.start() called stop() after setting this.config, which nullified the config before the 3-second startup timer fired. As a result, the...
テキストアトリビューションモードがアクティブであるときにre***バッジを隠す
内側のバッジをターゲする独自のCSSセレクターを修正 #re***-container。 Googleはバッジを直接<body>に注入します、 そのため、ルールは一致しません。 .gre***-badge へ変更 可視性:DOM要素を現在保持する隠し(Googleで必須) 視覚的に隠す間.
外部のダークモードCSSを上書きするために光モードを強制する
- Tailwind darkMode を 'class' に設定して、OS の優先度がダークユーティリティをトリガーするのを防ぐ - 光モード変数をロックするためにglobals.cssで!importantオーバーライドを追加 - 外部CSSがDynamicMetaLoaderにロードした後、インラインスタイルを注...
Resolve horizontal overlap, follower blind spot, and timing bugs
- flyToHomeRow: compute per-follower actual dx extents to derive rightBuffer/leftBuffer independently, placing anchor correctly to prevent ring followers from...
OSカラースキームの設定に関係なく、強制光モード
削除されると、サイトは常にライトモードでレンダリングされるため、色調のダークメディアクエリが優先されます.
ビューボックスの作物を介してSVGに保存されたサイズのスライダーズーム
Avatar Creatorの内部スケール変換は、SVG内のアバターボディをズーム キャンバス、しかし効果は小さい表示サイズ(例えばaで含んでいます)で浸透性です 140x140 アバターコンポーネント プレビューは冗長CSSを使っていました 変換: scale() は zoom を表示していますが、CSS は決してそ...
アバタープレビューから冗長CSSスケール変換を削除します
Avatar Creatorのスケールオプションは、SVGグループとして既にスケール(N/100)を適用しています。 アバターボディを変形させます。 プレビューコンテナも適用されました CSS の変形: スケール(N/100)、効果(2.5 の × 2.5 = 6.25x の混合 250%). これは、プレビューは大幅...
MakeRoom およびポストドックの衝突の決断を実装して下さい
No-op の hexheads:makeRoom のリスナーを実際のハンドラで置き換えます 新しいツールウィンドウの DOM の rect の後に resolveCollisions を実行する 安定しています。 リスナーリークを修正(匿名で、クリーンアップしません)。 また、wrapperAroundDockの後に...
ノンサップの低下およびswaarmの後で衝突を解決して下さい
非スナップドロップで、ポジションを節約する前に、requireCollisionsを実行します。 右下隅にスタッキングを防止します。 Swarmの低下はまた resolveCollisions を実行し、正しく永続的な位置を持続させます.
FlyToHomeRowのグループウェアスロット幅
グループは現在、水平スロットをフォロワーに比例して保持 リング範囲(正しいフラットトップの軸式を使用して)、グループを防ぐ 隣接するアンカーのスペースを侵入するフォロワー。 また、 配置後の安全網として二重rAFの解決衝突は渡します.
Z-index DOM のソートを削除し、クリックイベントがフォーカスを落とすのを防ぐ
ToolDock の zIndex でウィンドウをソートすると、DOM ノードがすべてのノードで再配置されました。 フォーカスイベント(マウスダウン) ブラウザは、そのターゲット要素がクリックイベントをドロップする マウスダウンとマウスアップの間を移動し、2つ目のクリックでボタンをアクティブにします。 CSS z-in...
Bake background color/gradient into saved Avatar Creator avatar SVG
Avatar Creator generates transparent-background SVGs by default. The background was only applied as a CSS wrapper on the preview container, so the stored MinIO ...
Dispatch member-panel-toggle via useEffect to avoid stale Framer Motion closure
onAnimationStart/Complete hold the last rendered props, so the exit animation always saw isOpen=true and windows never relayed to the right on close. Using a us...
Correct member-panel-toggle event property so tool windows respect panel offset
The event was dispatching `{ isOpen }` but ToolWindowsContext read `detail.open`, causing memberPanelOpenRef to always be falsy and the 500px panel offset to ne...
Eliminate hexhead spawn overlap by computing unique column positions
Each head now initialises its MotionValue at its own home-row column X and below the viewport (h + SIZE), then springs up to its final slot. Previously all head...
