Commit Graph

83 Commits

Author SHA1 Message Date
c963f953d8 docs: record user feedback fixes for ImageAdjustmentModal 2026-04-22 12:57:31 +03:00
b73f012332 feat: integrate ImageAdjustmentModal into AIOnboarding flow
Added user-controlled image adjustment modal that displays after item
confirmation, allowing users to adjust rotation/crop before final save.

Changes:
- AIOnboarding: wrapper confirmSingleItem to show modal post-selection
- State: showImageAdjustment, adjustingItemIndex, pendingItemData
- Handlers: confirm/cancel for applying or discarding adjustments
- Flow: item save → modal display → adjustments applied → DB commit

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-22 12:45:44 +03:00
e0f334b704 docs: save complete SESSION_STATE for next session
- Document AI non-determinism finding (critical discovery)
- Record ImageAdjustmentModal completion
- Detail integration checklist for next session
- Explain new user-controlled image adjustment workflow
- All commits and features documented for continuity
2026-04-22 12:39:58 +03:00
5178776005 docs: record debugging findings and next test steps 2026-04-22 11:51:16 +03:00
4977f4ac0a docs: update SESSION_STATE with interactive crop box feature 2026-04-22 11:47:23 +03:00
0cff09ccd0 docs: final SESSION_STATE for v1.14.5 - Complete debug panel 2026-04-22 11:33:46 +03:00
7bd03864b5 docs: update SESSION_STATE with debug panel improvements 2026-04-22 11:21:57 +03:00
36e721e742 docs: update VERSION and SESSION_STATE for v1.14.5 - Original Image Storage 2026-04-22 11:15:05 +03:00
092271790c docs: update VERSION and SESSION_STATE for v1.14.4 - Image Pipeline Complete 2026-04-22 08:51:04 +03:00
1c13ebd76f docs: update VERSION and SESSION_STATE for v1.14.3 - Image Confirmation UX
Documented the complete image pipeline feature:
- v1.14.1: Type system fix (photo_path fields)
- v1.14.2: Serialization fix (Blob to base64)
- v1.14.3: User control (image confirmation buttons)

Users now have full control over whether extracted photos are auto-saved
through the 'Use Photo' / 'Skip Photo' buttons in the editing form.
2026-04-21 20:01:28 +03:00
c95e4c40b8 docs: update VERSION and SESSION_STATE for v1.14.2 - Blob serialization fix
Documented the complete image pipeline bugfix:
- Part 1 (v1.14.1): Type system mismatch for photo_path fields
- Part 2 (v1.14.2): Blob serialization issue - image not reaching backend

The extracted image blob is now converted to base64 before sending to the API,
ensuring it's JSON-safe and matches the backend's ItemCreate schema.
2026-04-21 19:54:24 +03:00
f72b976c33 docs: update SESSION_STATE for Session 29 - Image Display Bugfix
Documented the image display issue, root cause (type system mismatch),
and the fix applied in v1.14.1. Images now correctly display from
the auto-photo-save feature in both ItemDetailModal and InventoryTable.
2026-04-21 19:47:52 +03:00
174c35bac3 docs: complete Phase 3 documentation - AI extraction + auto-photo-save implementation complete 2026-04-21 19:35:18 +03:00
baf38f227f docs: update SESSION_STATE for Phase 3 Task 8 (E2E test) completion 2026-04-21 19:33:38 +03:00
3ba31a7b48 docs: update SESSION_STATE for Phase 3 Task 7 completion 2026-04-21 19:31:49 +03:00
b56affa90e docs: update SESSION_STATE for Phase 3 Task 6 completion 2026-04-21 19:27:47 +03:00
68f52ccb03 docs: update SESSION_STATE for Phase 3 Task 4 completion 2026-04-21 19:04:35 +03:00
2d219af7f6 docs: update SESSION_STATE for Phase 3 Task 3 completion 2026-04-21 19:00:30 +03:00
20fc352f6f docs: update SESSION_STATE for Phase 3 Task 2 completion 2026-04-21 18:56:42 +03:00
e368574fba docs: update SESSION_STATE for Phase 3 Task 1 completion 2026-04-21 18:53:30 +03:00
87f3b53d53 docs: update SESSION_STATE for CORS security fix completion (Session 20) 2026-04-21 17:58:55 +03:00
0d7ccf834b docs: update SESSION_STATE for Phase 2 completion and handover
Session 19 summary:
- Network configuration fully environment-variable driven (zero hardcoded IPs)
- SSL proxies bound to SERVER_IP for cross-network access
- Frontend uses SERVER_IP for API routing
- Fixed username input focus-jumping bug in login form
- LAN access fully working (192.168.84.131)
- VPN access needs CORS subnet validation (currently blocked)

Known issues documented for next session:
- Temporary allow_origins=['*'] needs replacement with subnet validation
- VPN CORS blocking (subnet notation creates invalid origin URLs)

All 427 tests passing, build successful.
2026-04-21 17:56:11 +03:00
cc42e7cf29 docs: update SESSION_STATE and VERSION for Phase 2 completion and handover 2026-04-21 15:09:35 +03:00
6d43b16e6e docs: update SESSION_STATE for Phase 2 Task 6 completion 2026-04-21 14:53:59 +03:00
74c91b117f test(phase2): fix mobile E2E test Playwright fixture structure - 15 tests valid 2026-04-21 14:45:24 +03:00
661094cfce docs: update SESSION_STATE for Phase 2 Task 3 completion (photo upload integration) 2026-04-21 13:20:31 +03:00
359f317200 docs: update SESSION_STATE for Phase 2 Task 2 completion 2026-04-21 13:06:00 +03:00
a6753e077f docs: update SESSION_STATE.md - Task 4 Photo API fixes complete 2026-04-20 22:39:40 +03:00
d85c72e1d6 Build [v0.2.0]
Major UI/UX optimization release:
- Removed all bold fonts throughout app (291 replacements) - font-normal standard
- Full-app spacing optimization: Scanner, Inventory, Logs, Admin, Login pages
- Fixed mobile portrait viewport overflow issues (~136px gained on mobile)
- Updated AI_RULES.md Section 3: NO BOLD FONTS requirement
- Increased subtitle/label font sizes for readability
- Mobile-first responsive breakpoints implemented

Test results: 291/291 frontend, 41/41 backend, zero TypeScript errors
Version bumped: 0.1.0 → 0.2.0
2026-04-19 19:12:55 +03:00
4760e981bc docs: update SESSION_STATE.md with cleanup session summary 2026-04-19 18:21:05 +03:00
e0321c29a0 docs: add zoom button debug guide and session 9 handover notes 2026-04-19 17:39:37 +03:00
3e9c56aa22 docs: update SESSION_STATE.md - Admin endpoint paths fixed 2026-04-19 17:23:08 +03:00
d9ead1aafd fix: repair login endpoint registration in auth router 2026-04-19 17:20:11 +03:00
7ff9a705cd docs: update SESSION_STATE.md - Phase 3 Backend Cleanup complete 2026-04-19 17:11:37 +03:00
a225d2efc6 fix: restore Search icon import in inventory/page.tsx and update session state - Phase 2 complete 2026-04-19 16:13:14 +03:00
cbcd9263e0 docs: update session state - Phase 1 (hook extractions) complete 2026-04-19 12:37:43 +03:00
0e89059cac docs: update session state with Phase 1 refactoring progress 2026-04-19 12:25:03 +03:00
ddb5905c98 docs: update session state - phase 4 E2E validation in progress, 332/365 tests passing 2026-04-19 10:19:58 +03:00
bf24fb3ab7 docs: update session state - phase 3 complete with E2E test suite (81 tests, 5 workflows) 2026-04-19 08:01:51 +03:00
2e7a31ae0a docs: update session state - phase 3 infrastructure complete (15 commits, 81 tests) 2026-04-19 07:59:21 +03:00
c38a4fcc50 docs: phase 2 complete - 284 frontend tests, git tag phase-2-complete created 2026-04-18 18:37:14 +00:00
6a49309a0e docs: update session state - AIOnboarding.test.tsx jsdom compatibility fixed 2026-04-18 18:30:06 +00:00
81b29596dc docs: update session state with batch 2 frontend tests completion 2026-04-18 18:16:56 +00:00
1b0e92ad25 docs: update session state with phase 1 completion and phase 2 next steps 2026-04-18 17:11:19 +00:00
055ef051ca docs: update handover state after v1.10.16 release 2026-04-18 16:22:21 +00:00
a0d769b93d chore: update session state with audit completion and next steps
- Document 7 commits fixing server startup, gradients, responsive design, animations, and accessibility
- Frontend audit score improved: 14/20 → 17+/20 target
- Updated next AI handover with server verification, audit re-run, and design token work
- Ready for testing and v1.10.12 release
2026-04-18 14:16:02 +00:00
cb5c9ecd1b chore: update session state with startup script fixes 2026-04-18 13:23:12 +00:00
e7557e42fa chore: update handover note to reflect Linux git binary 2026-04-18 13:08:59 +00:00
439a7fc266 refactor: comprehensive polish pass - accessibility and color tokenization
POLISH IMPROVEMENTS:
- Add focus-visible indicators to 40+ previously missing buttons in admin managers
- Add aria-labels to all interactive elements for screen readers
- Remove debug console.log from page.tsx OCR preload (line 126)

COLOR TOKENIZATION:
- Replace all hard-coded indigo brand colors with primary token across admin managers:
  - IdentityManager, DatabaseManager, AiManager, CategoryManager, LdapManager
  - Indigo (#818cf8) → primary blue (#3b82f6)
- Replace hard-coded purple with primary
- Standardize destructive action color: red-500 → rose-500 for consistency
- Update all hover states and focus rings to use primary token

FORM IMPROVEMENTS:
- Add focus-visible indicators to input fields in DatabaseManager
- Consistent primary token usage in form focus states

ACCESSIBILITY GAINS:
- 15+ new aria-labels added to icon buttons
- 40+ buttons now have keyboard focus indicators
- All form inputs have proper focus styling
- Complete WCAG AA compliance for keyboard navigation

TECHNICAL DEBT:
- Zero hard-coded brand colors remaining in admin managers
- Centralized color token system fully implemented
- No debug logging in production code
2026-04-17 10:59:45 +03:00
3e60bb1707 perf(frontend): lazy-load tesseract.js OCR library
Replace static import of tesseract.js (500KB) with dynamic import in Scanner
component. Library now only loads when OCR recognition is actually performed,
not on initial page load.

Performance Impact:
- Removes 500KB from initial bundle
- Library only loads when user activates OCR mode
- Preload strategy in page.tsx still works (loads on-demand if scanner opened)
- No functional change; same behavior, faster initial load

Implementation:
- Remove static import from Scanner.tsx (line 6)
- Replace with dynamic import at point of use (line 166+)
- page.tsx preloadOCR already uses dynamic import (no change needed)
- Improves initial page load time significantly

Build: Passes with zero errors. Compile time: 2.4s.
2026-04-17 10:40:42 +03:00