stock-manager-bot
|
9b023ee558
|
fix(schemas): fix asset schema Zod generic and form test types
|
2026-06-25 19:54:46 +02:00 |
|
stock-manager-bot
|
44565e3a62
|
test(cleanup): fix pre-existing test mocks and data
|
2026-06-25 19:50:02 +02:00 |
|
aferrer
|
18e274ef37
|
feat(assignments): close and reopen assignment on person swap
|
2026-06-25 17:20:24 +02:00 |
|
aferrer
|
b4b63e107a
|
feat(assets): pair ASSIGNMENT movement on itemChanged AVAILABLE→ASSIGNED
|
2026-06-25 17:05:23 +02:00 |
|
aferrer
|
91dc0220ae
|
feat(assignments): emit ADJUSTMENT movement on quantity change
|
2026-06-25 16:58:03 +02:00 |
|
aferrer
|
1142855578
|
feat(assets): thread previousStatus through movement writes
|
2026-06-25 03:25:47 +02:00 |
|
aferrer
|
a0a1e1bdc8
|
feat(movements): gate StockMovementLine on trackingType QUANTITY
|
2026-06-25 03:22:08 +02:00 |
|
aferrer
|
8f7a406e83
|
fix(assets): omit phantom stock line for ASSIGNED assets
|
2026-06-25 03:14:00 +02:00 |
|
aferrer
|
95c52579d1
|
refactor(movements): normalize snapshot convention to mutate-then-write
|
2026-06-25 03:11:15 +02:00 |
|
aferrer
|
575cd2d9a0
|
feat(items): emit ISSUE/ADJUSTMENT movement on stock decrease
|
2026-06-25 03:03:26 +02:00 |
|
aferrer
|
0d38626f3a
|
test(cleanup): remove legacy admin users references
|
2026-06-20 16:27:36 +02:00 |
|
aferrer
|
d217edd4e5
|
test(i18n): sync inventory dictionary contracts
|
2026-06-19 17:14:22 +02:00 |
|
aferrer
|
f32d55a7b0
|
feat(assets): add asset metadata views and enforce assignment transitions
|
2026-06-19 17:14:22 +02:00 |
|
aferrer
|
c1763ed007
|
feat(assignments): support line-based returns and authenticated updates
|
2026-06-19 17:14:22 +02:00 |
|
aferrer
|
965a04a468
|
feat(items): adapt item flows to inventory schema defaults and SKU generation
|
2026-06-19 17:14:22 +02:00 |
|
aferrer
|
7b8a415c6a
|
feat(people): align people, users, and categories with active inventory records
|
2026-06-19 17:14:22 +02:00 |
|
aferrer
|
c123170a46
|
test(e2e): forbid focused Playwright tests in CI
|
2026-06-19 01:05:33 +02:00 |
|
aferrer
|
6d34a2f74f
|
feat(inventory): support line-based assignments and movements
|
2026-06-19 01:05:33 +02:00 |
|
aferrer
|
8e6a00c2a9
|
feat(people): adapt person user flows to status model
|
2026-06-19 01:05:33 +02:00 |
|
aferrer
|
01d89cd21b
|
feat(auth): align login and bootstrap with new user schema
|
2026-06-19 01:05:33 +02:00 |
|
aferrer
|
2ed9445f7f
|
feat(db): reshape user and inventory schema
|
2026-06-19 01:05:33 +02:00 |
|
aferrer
|
1a95bf4613
|
docs: update README to reflect Person model and /people migration
|
2026-06-18 23:27:12 +02:00 |
|
aferrer
|
fff5ce01e5
|
chore: add openspec and sdd to gitignore
|
2026-06-18 22:51:08 +02:00 |
|
aferrer
|
fb5f3da7c1
|
feat: add quick-assign action from people list with person preselected
|
2026-06-18 22:46:35 +02:00 |
|
aferrer
|
df02d24d79
|
refactor: remove obsolete admin/users files after /people migration
|
2026-06-18 22:45:39 +02:00 |
|
aferrer
|
92f83c708a
|
refactor(i18n): update Spanish (es) locale strings for delivery note
|
2026-06-17 09:41:32 +02:00 |
|
aferrer
|
d6b42d78e7
|
refactor: consolidate admin/users management under /people
|
2026-06-17 09:32:26 +02:00 |
|
aferrer
|
4f370eee70
|
refactor: move unified Person+User form to /people/new, admin-only
|
2026-06-17 08:51:23 +02:00 |
|
aferrer
|
1f5a849bf5
|
feat: unify Person and User creation form with conditional password
|
2026-06-16 21:48:59 +02:00 |
|
aferrer
|
e5717461cf
|
feat: add unified Person+User creation backend
|
2026-06-16 21:21:17 +02:00 |
|
aferrer
|
68c2983d36
|
refactor: remove username from User model, login by email only
|
2026-06-16 16:18:42 +02:00 |
|
aferrer
|
caf19575c6
|
refactor: rename DB columns recipientId to personId
|
2026-06-16 13:37:58 +02:00 |
|
aferrer
|
cf6820a7aa
|
refactor: rename remaining recipient references to person/people
|
2026-06-16 13:34:15 +02:00 |
|
aferrer
|
29c7c19cd8
|
refactor: complete i18n rename recipients to people, finalize tests
|
2026-06-16 12:25:57 +02:00 |
|
aferrer
|
ecc3cf1b55
|
refactor: rename recipients route to people, update all frontend references
|
2026-06-16 11:26:21 +02:00 |
|
aferrer
|
d67f31cf54
|
refactor: rename Recipient to Person, remove username, add userId FK
|
2026-06-16 10:04:24 +02:00 |
|
aferrer
|
befe1f3f82
|
fix(validation): replace deprecated Zod error flatten calls
|
2026-06-15 21:59:02 +02:00 |
|
aferrer
|
20552ba68b
|
docs: document i18n architecture and localized surfaces
|
2026-06-15 17:04:36 +02:00 |
|
aferrer
|
73552dbb05
|
feat(i18n): localize admin users UI surfaces
|
2026-06-15 16:01:19 +02:00 |
|
aferrer
|
0cbbe60299
|
feat(i18n): localize admin users backbone
|
2026-06-15 15:35:08 +02:00 |
|
aferrer
|
349559f4e0
|
feat(i18n): localize assignment validation messages
|
2026-06-15 01:15:24 +02:00 |
|
aferrer
|
bfea2b77ab
|
feat(i18n): localize inventory assignments UI
|
2026-06-15 00:47:25 +02:00 |
|
aferrer
|
9b713c42e2
|
feat(i18n): localize recipient validation messages
|
2026-06-14 22:41:20 +02:00 |
|
aferrer
|
c0ae7a034a
|
feat(i18n): localize recipients UI
|
2026-06-14 18:33:57 +02:00 |
|
aferrer
|
ea37fc8d70
|
test(i18n): cover movement page localization
|
2026-06-14 02:05:01 +02:00 |
|
aferrer
|
f62cd6fb37
|
feat(i18n): localize movement UI
|
2026-06-14 01:20:23 +02:00 |
|
aferrer
|
7d5ab64653
|
feat(i18n): localize asset validation messages
|
2026-06-13 17:23:01 +02:00 |
|
aferrer
|
3d6b13dc1c
|
feat(i18n): localize inventory assets UI
|
2026-06-13 17:07:51 +02:00 |
|
aferrer
|
c67e86c91b
|
feat(i18n): localize item validation messages
|
2026-06-13 11:28:28 +02:00 |
|
aferrer
|
964b1648ca
|
feat(i18n): localize inventory items UI
|
2026-06-13 11:12:02 +02:00 |
|