• Joined on 2026-07-16
David pushed to main at David/MEGAINFRA-WEBAPP 2026-09-17 23:23:16 +00:00
a9ace03f9d fix(financial): stop counting supplier invoices as deliveries
2c5cde6bce feat(dn-batches): dismiss a single duplicate note, and stop erasing promoted counts
293606448e feat(dn-pipeline): check quantities against the order and the line's own maths
8d1452ae6f docs: add the Hermes brief for the needs-attention queue
Compare 4 commits »
David pushed to main at David/MEGAINFRA-WEBAPP 2026-09-17 21:48:31 +00:00
984b1de692 Merge branch 'fix/dn-inbox-corrections'
9007407d25 fix(dn-pipeline): enhance product resolution by incorporating article numbers
d02feee57f feat(dn-batches): one batch per tick by default
d4ac4bd6e4 fix(dn-pipeline): key aliases on what actually identifies a product
ba3dba99ee test(dn-pipeline): use the real slip text, not an invented one
Compare 22 commits »
David pushed to fix/dn-inbox-corrections at David/MEGAINFRA-WEBAPP 2026-09-17 20:59:17 +00:00
9007407d25 fix(dn-pipeline): enhance product resolution by incorporating article numbers
David created branch fix/dn-inbox-corrections in David/MEGAINFRA-WEBAPP 2026-09-17 20:54:42 +00:00
David pushed to fix/dn-inbox-corrections at David/MEGAINFRA-WEBAPP 2026-09-17 20:54:42 +00:00
d02feee57f feat(dn-batches): one batch per tick by default
d4ac4bd6e4 fix(dn-pipeline): key aliases on what actually identifies a product
ba3dba99ee test(dn-pipeline): use the real slip text, not an invented one
ba66480adf fix(dn-pipeline): close two wrong-match paths found against live data
27877fa1bf fix(delivery-notes): a stray page no longer condemns good notes
Compare 10 commits »
David pushed to main at David/MEGAINFRA-WEBAPP 2026-09-17 16:58:24 +00:00
a7c116c036 feat(delivery-notes): accept multi-file uploads (up to 50 per request)
31fbc52c4d chore: 410 the old ocr-result route and archive its workflow export
49b6547c0c docs(n8n): rewrite for the two-node tick workflow
6317f5da09 fix(delivery-notes): surface every processing_status in the filter
ea0299193d fix(dn-batches): heal created/updated fields on existing live collections
Compare 35 commits »
David pushed to main at David/WFDASH-WEBAPP 2026-09-17 11:54:07 +00:00
dce54934f0 fix(invoicing): bill only what's collected, support partial pickups + kit splits
David pushed to main at David/kanban-dev-webapp 2026-09-16 10:52:45 +00:00
0fd2cef2cf docs(plan): Phase 2b and 2c for commit linking, metrics and the dashboard
9289bf3511 chore(backfill): CLI helper for off-server backfill runs
cd9c8df031 test(ingest): webhook and cron endpoint protection
8c60c1dc1b feat(admin): repository linking, webhook setup and backfill
0236a0b1eb feat(actions): backfill and webhook secret rotation
Compare 12 commits »
David pushed to main at David/kanban-dev-webapp 2026-09-16 09:42:00 +00:00
3f9bbb783a docs(plan): Phase 2a implementation plan for commit ingestion
38d3758d2d feat(brand): align default client brand colour with new teal palette
40af2b4c98 feat(theme): retune tokens to Modern Color Palette
Compare 3 commits »
David pushed to main at David/kanban-dev-webapp 2026-09-16 09:32:59 +00:00
ef9487dae9 docs(spec): Phase 2 design for commit ingestion and the project dashboard
52e6bae17b fix(admin): extract default brand colour to .ts so the colour check stays clean
4b316063dc test(admin): board invariants, owner-only writes, deactivation
6112db1bb6 feat(archive): archived card list with unarchive
7ec075567b feat(admin): issue, reset and deactivate manager accounts
Compare 15 commits »
David pushed to main at David/kanban-dev-webapp 2026-09-16 09:24:10 +00:00
301af1f739 docs(plan): Phase 1d implementation plan for admin and accounts
David pushed to main at David/kanban-dev-webapp 2026-09-16 09:18:16 +00:00
2a8d6f2505 fix(security): lock the users collection against privilege escalation
c966d7dcc9 test(actions): cover audit-log immunity and request flags
043d8ddc8c feat(board): add cards as owner, request features as client
07656a5bc7 feat(board): open a card without breaking drag
c4a8ad2860 feat(card): detail page with checklist, comments and history
Compare 14 commits »
David pushed to main at David/WFDASH-WEBAPP 2026-09-16 09:04:47 +00:00
1bc0da40e7 feat(customers): lift active/inactive toggle to top of customer form
David pushed to main at David/kanban-dev-webapp 2026-09-16 08:56:58 +00:00
0c6557b89d docs(plan): Phase 1c implementation plan for card detail and the Inbox flow
f082670f8a fix(board): guard optimistic move against a refresh landing mid-save
e419bc21db fix(login): use theme tokens instead of hardcoded neutral colours
Compare 3 commits »
David pushed to main at David/kanban-dev-webapp 2026-09-16 08:32:34 +00:00
95346c5c82 docs: Coolify-only setup, and mark pb_migrations as non-executing
David created branch main in David/kanban-dev-webapp 2026-09-16 08:30:55 +00:00
David pushed to main at David/kanban-dev-webapp 2026-09-16 08:30:55 +00:00
bb39519801 feat(board): refresh the board when the window regains focus
972d45d38b feat(board): owner drag and drop with optimistic persistence
4649c82432 feat(api): owner card move route using the caller's own token
f4568e4745 feat(board): column, card tile and client control presentation
a876ad6118 feat(home): role-aware project list with inbox badges
Compare 10 commits »
David created repository David/kanban-dev-webapp 2026-09-16 07:51:20 +00:00
David pushed to main at David/WFDASH-WEBAPP 2026-09-16 07:50:03 +00:00
da90706ce0 feat(stock): implement auto-markup for selling price and markup on stock item creation and updates
David pushed to main at David/WFDASH-WEBAPP 2026-09-16 07:47:18 +00:00
bbfa888cc1 feat(customers): add status toggle and site/location field
698abe9fbc feat(stock): inline qty editing + column sort + pricing-gap operator scripts
7443776a14 feat(stock): seed pricing fields on create + sync price_list to stock_items
Compare 3 commits »