Skip to content

Commit bfe7dfd

Browse files
Foundupclaude
andcommitted
docs(gotjunk): Update ModLog with 2025-11-09 session changes
Added comprehensive entry documenting 7 PRs merged in today's session: - PR #62: Icon size adjustment (12px → 16px) - PR #63: Instructions modal on every load + sidebar positioning - PR #64: Instructions modal with actual swipe button components - PR #65: Fixed modal overlap with camera orb - PR #66: Z-index hierarchy fix (modals above all controls) - PR #67: Instructions modal only on Browse tab - PR #68: Proper modal centering Documented: - Problem/solution for each PR - Code changes with before/after examples - WSP compliance references (WSP 22, 50, 64, 87) - User feedback integration process - Build metrics and zero regression validation WSP 22 Compliance: ModLog kept current with all session changes. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
1 parent ba94ea4 commit bfe7dfd

File tree

1 file changed

+100
-0
lines changed

1 file changed

+100
-0
lines changed

modules/foundups/gotjunk/ModLog.md

Lines changed: 100 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,105 @@
11
# GotJUNK? FoundUp - Module Change Log
22

3+
## Modal & Icon UI Refinements (2025-11-09)
4+
5+
**Session Summary**: Fixed critical UX issues with modal layering, instructions popup, and icon sizing based on user feedback.
6+
7+
### PR #62: Sidebar Icon Size Adjustment
8+
**Problem**: 12px icons were too small for thumb accessibility on mobile.
9+
**Fix**: Increased icon size from 12px → 16px in `LeftSidebarNav.tsx`
10+
- GridIcon, MapIcon, HomeIcon, CartIcon all updated
11+
- Maintains 54px button size with 19px padding per side
12+
- User confirmed improved visibility and accessibility
13+
14+
### PR #63: Instructions Modal & Sidebar Position
15+
**Changes**:
16+
1. **Instructions modal now shows on every page load** (removed localStorage persistence)
17+
- Before: Showed once, then never again
18+
- After: Shows on every refresh for consistent onboarding
19+
- Changed `useState(() => { ...localStorage... })``useState(true)`
20+
21+
2. **Sidebar moved up 10px** for better thumb reach
22+
- Changed `--sb-bottom-safe` from 120px → 130px in `index.css`
23+
- Applies to all 4 navigation icons
24+
25+
### PR #64: Instructions Modal Visual Improvements
26+
**Problem**: Modal used emoji arrows instead of actual UI components.
27+
**Fix**: Complete redesign with actual swipe button components
28+
- Imports `LeftArrowIcon` and `RightArrowIcon` from button components
29+
- Recreates exact button styling: `bg-red-600/50` and `bg-green-500/50`
30+
- Compact 80% width layout (max-width 340px)
31+
- Added `pointer-events-none` to prevent interaction in tutorial
32+
33+
### PR #65: Instructions Modal Overlap Fix
34+
**Problem**: Modal used `32px` instead of Tailwind `bottom-32` (8rem = 128px).
35+
**Fix**: Corrected bottom calculation
36+
- Changed `calc(32px + ...)``calc(8rem + ...)`
37+
- Fixed 96px positioning error that caused overlap with camera orb
38+
39+
### PR #66: Z-Index Hierarchy Fix ⭐
40+
**Problem**: ClassificationModal (`z-[200]`) appeared **behind** camera orb (2120) and sidebar (2200).
41+
**Root Cause**: All modals had hardcoded low z-index values (200-300 range).
42+
43+
**Fix**: Added centralized z-index constants in `zLayers.ts`
44+
```typescript
45+
export const Z_LAYERS = {
46+
popup: 1200,
47+
fullscreen: 1400,
48+
gallery: 1500,
49+
mapOverlay: 1600,
50+
floatingControls: 2100,
51+
sidebar: 2200,
52+
modal: 2300, // NEW - ClassificationModal, OptionsModal
53+
actionSheet: 2400, // NEW - Discount/Bid sheets
54+
} as const;
55+
```
56+
57+
**Files Updated**:
58+
- `ClassificationModal.tsx`: z-[200]`Z_LAYERS.modal` (2300)
59+
- `OptionsModal.tsx`: z-[300]`Z_LAYERS.modal` (2300)
60+
- `ActionSheetDiscount.tsx`: z-[250/251]`Z_LAYERS.actionSheet` (2400)
61+
- `ActionSheetBid.tsx`: z-[250/251]`Z_LAYERS.actionSheet` (2400)
62+
63+
**Result**: Classification modal now correctly appears above all controls.
64+
65+
### PR #67: Instructions Modal - Browse Tab Only
66+
**Problem**: Modal appeared on ALL tabs (Browse, Map, My Items, Cart).
67+
**Fix**: Added tab condition to only show on landing page
68+
- Changed `isOpen={showInstructions}``isOpen={showInstructions && activeTab === 'browse'}`
69+
- Prevents confusion when user navigates to other tabs on first load
70+
71+
### PR #68: Instructions Modal Centering
72+
**Problem**: Complex bottom calculation pushed modal half off-screen.
73+
**Fix**: Proper CSS centering
74+
```tsx
75+
// Before - Off-screen
76+
bottom: 'calc(8rem + clamp(128px, 16vh, 192px) + 40px)'
77+
78+
// After - Centered
79+
className="fixed left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2"
80+
style={{ maxHeight: '80vh' }}
81+
```
82+
83+
**WSP Compliance**:
84+
- **WSP 50**: Pre-action verification (read icon components before editing)
85+
- **WSP 22**: ModLog documentation (this entry)
86+
- **WSP 64**: Z-index contract established (no hardcoded values)
87+
- **WSP 87**: NO vibecoding - followed existing patterns
88+
89+
**Metrics**:
90+
- 7 PRs merged in single session
91+
- Build time: ~2.7s average
92+
- Bundle size stable: ~417 kB (130 kB gzipped)
93+
- Zero regressions introduced
94+
95+
**User Feedback Integration**:
96+
- Icon size: User tested and confirmed 16px optimal
97+
- Modal positioning: User-reported overlap issues resolved
98+
- Z-index: User screenshot showed modal behind controls - fixed
99+
- Tab targeting: User clarified landing page behavior - implemented
100+
101+
---
102+
3103
## Adaptive Icon Visibility on Map View (2025-11-08)
4104

5105
**Problem**: Sidebar navigation icons (grid, map, home, cart) had low contrast against varied map tile backgrounds:

0 commit comments

Comments
 (0)