Replace pipeline modal dialogs with full detail pages
Rebuild all 6 market detail pages (Orders, Applications, Bookings, Agreements, Procurement, Service) from scratch using a shared PipelineRecordLayout component....
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. ...
Redesign Apps & Features page with polished modern UI
Restyle the settings/account apps tab with stats banner, gradient icon containers, always-visible category filter pills, refined card hover states, animated vie...
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.
Move useUserInfo hook into OrgStep component to fix build error
getParentBranchTitleNonPlural was referenced in OrgStep but only destructured in the parent CreateNetworkPage component.
Add abstract title labels and dynamic parent branch titles
Add memberTitleAbstract and teamMemberTitleAbstract label fields with sync support. Replace hardcoded "Company" references with dynamic parentBranchTitleNonPlur...
Split ageReqType into member and team member fields
Update Organization type, PublicProvider, route schema, and BranchSetupManager with separate member/team member age requirement sections.
Rename Employee to TeamMember and wire up dynamic label overrides
Rename all Employee/Employment references to TeamMember/TeamMembership. Replace hardcoded Member/Team Member display text with dynamic label getters from useUse...
Add Child Organization Security Models mock UI to Branch Setup tab
Adds a datagrid with inline edit/add panel for managing child org security models, including org visibility toggles, age range selection, identity provider and ...
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...
Add branch setup implementation plan
12-task sequential plan covering kamo-shared-library, SecurityService, and kamo-internal changes end-to-end.
Add branch setup design spec
Covers the full feature from kamo-shared-library schema changes through SecurityService session/endpoint changes to kamo-internal UI and API proxy.
Eliminate OTK Redis overhead and proxy log noise for message fetches
- Bypass OTK generation in the MediaService proxy route: forward the *** cookie directly instead of generating a one-time key, removing 4 Redis round-trips ...
Migliorare le prestazioni di caricamento dei messaggi di chat
- Cache getCurrentMemberId() provoca un ref per evitare ripetuti /api/user-info chiama ogni messaggio WebSocket e indicatore di digitazione - Parallelizzare la ...
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...
Bake Size slider zoom into saved SVG via viewBox crop
Avatar Creator's internal scale transform zooms the avatar body within the SVG canvas, but the effect is imperceptible at small display sizes (e.g. a 140x140 Av...
Rimuovere la scala CSS ridondante trasformarsi da anteprima avatar
L'opzione di scala di Avatar Creator applica già la scala (N/100) come gruppo SVG trasformare sul corpo avatar. Il contenitore di anteprima era anche l'applicaz...
Risoluzione di collisione post-dock
Sostituisce i no-op hexheads:makeRoom listener con un vero handler che esegue la risoluzioneCollisions dopo la nuova finestra dello strumento è stabile. Fissa l...
Risolvere le collisioni dopo la caduta e lo swarm non-snap
Non-snap gocce ora eseguire la risoluzioneCollisions prima di salvare le posizioni, impedendo di impilare nell'angolo in basso a destra. Gocce di armatura anche...
Larghezze di slot per gruppi in flyToHomeRow
I gruppi ora riservano slot orizzontali proporzionali al loro seguace estensione dell'anello (utilizzando la formula assiale piatta corretta), impedendo il grup...
Aggiungi risoluzioneCollisions useCallback
Rileva le violazioni spaziali testa a testa e testa a strumentoWindow e muove teste offendere alla posizione pulita più vicina via spiraleSearch. Deve essere ch...
Aggiungi MIN GAP costante e spiraleSearch helper
Aggiunge il divario minimo 5px invariante costante e una ricerca a spirale funzione che trova la posizione di pixel senza collisione più vicina per un hexhead, ...
Aggiungi hexhead collision corregge il piano di implementazione
Rivestimento del piano di 5-task: a spiraleAiutatore della ricerca, risolvi l'uso di CollezioniCallback, gruppo-aware flyToHomeRow, onUp cablaggio non-snap/swar...
Rimuovere z-index DOM ordine per evitare che gli eventi di clic vengano eliminati sul fuoco
Ordinare le finestre di zIndex in ToolDock ha causato il nodo DOM riordinare su ogni focus event (mousedown). I browser cadono l'evento di clic quando il suo el...
Aggiungi hexhead collision fixs design spec
Spettacolo copre tre bug UX testa esagonale: sovrapposizione orizzontale vertex inferiore-fila, in basso a destra accatastamento quando scendono senza scatto, e...
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...
Like what you see shipping?
All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.
