make_post_sell/docs
russell@unturf.com 155f7ff66f
fix: MPS-24 Phase 2.8 — bulk tagger AJAX tag-focus + real drag-to-reorder
Operator (printableprompts.com, 481 products) reported the bulk tagger
'still refreshing the whole screen' and 'dragging tags doesn't work'
after 2.7. Two real defects the 2.7 static audit missed:

1. Tag-focus was a full-page navigation: clicking a tag chip is
   <a href=?focus=slug>, and the view loaded+rendered ALL products on
   EVERY GET. On a 481-product catalog every tag click reloaded a
   multi-MB page. The forms were AJAX; the dominant workflow was not.
2. Drag-to-reorder never existed: shop_tags.j2 shipped draggable=true +
   a handle + help text, but tag_bulk.js had ZERO drag handlers.

Fix:
- shop.py:shop_tags — all_products loads only when focus_tag or
  show_suggestions (bare GET is light). New AJAX branch: is_ajax +
  ?focus=slug -> JSON {focus, products:[{id,title,url,attached}]}.
- shop_tags.j2 — stable [data-focus-section] (always in DOM, hidden
  until focused); ?focus= chips carry data-tag-focus-link. No-JS
  unchanged (real navigation, server renders the section).
- tag_bulk.js — wireFocusLinks() intercepts chip clicks, fetchFocus()
  + renderFocus() swap the list in place, active-chip + history
  pushState/popstate, real-navigation fallback. wireDragAndDrop()
  HTML5 DnD -> persistOrder() POSTs action=set_order&tag_slugs=…
  (view already supported it) + re-syncs up/down disabled states.
  .tag-list-dragging CSS added.
- Tests: TestProductTagsSpa +4 (ajax focus json, unknown-slug null,
  set_order persists positions, bare GET no catalog). 1128 passed.

Docs: mps-24.md Phase 2.8, architecture.md, design-system.md, CLAUDE.md.
Deferred: AJAX 'Suggest categories' link (occasional click, not hot path).
2026-05-16 08:31:03 -04:00
..
tickets fix: MPS-24 Phase 2.8 — bulk tagger AJAX tag-focus + real drag-to-reorder 2026-05-16 08:31:03 -04:00
ADYEN.md Add Adyen payment integration 2025-12-22 17:16:54 -05:00
architecture.md fix: MPS-24 Phase 2.8 — bulk tagger AJAX tag-focus + real drag-to-reorder 2026-05-16 08:31:03 -04:00
auction-house.md feat: bounded SSE feeds for offer & auction state machines 2026-05-12 21:03:50 -04:00
crypto-payments-state-machine.md Update state machine documentation to use dash-separated naming 2025-10-04 13:02:07 -04:00
CRYPTO.rst Update Dogecoin blockchain size to reflect 2025 reality 2025-09-30 22:34:33 -04:00
CRYPTO_PERFORMANCE.rst Update Dogecoin blockchain size to reflect 2025 reality 2025-09-30 22:34:33 -04:00
CRYPTO_PROBLEMS.rst Fix payment UI documentation - buttons are REMOVED not disabled 2025-09-30 22:54:22 -04:00
design-system.md fix: MPS-24 Phase 2.8 — bulk tagger AJAX tag-focus + real drag-to-reorder 2026-05-16 08:31:03 -04:00
DOGECOIN.md Remove redundant Dogecoin configuration examples 2025-09-30 22:43:58 -04:00
DOGECOIN_DOOM.md Document DOGE DOOM vulnerability discovered by walkeruin 2025-10-03 20:04:22 +00:00
JAVASCRIPT.md docs: add MPS-6 through MPS-9 tickets, architecture diagram, update JS docs 2026-03-05 06:19:56 -05:00
karaoke-ondemand.dot docs: karaoke pipeline architecture with dot diagrams 2026-03-11 17:49:57 -04:00
karaoke-ondemand.dot.svg docs: karaoke pipeline architecture with dot diagrams 2026-03-11 17:49:57 -04:00
karaoke-pipeline.dot docs: karaoke pipeline architecture with dot diagrams 2026-03-11 17:49:57 -04:00
karaoke-pipeline.dot.svg docs: karaoke pipeline architecture with dot diagrams 2026-03-11 17:49:57 -04:00
karaoke-pipeline.md docs: karaoke pipeline architecture with dot diagrams 2026-03-11 17:49:57 -04:00
make-offer.md feat: bounded SSE feeds for offer & auction state machines 2026-05-12 21:03:50 -04:00
MONERO.rst Remove database implementation details from crypto docs 2025-09-30 22:40:10 -04:00
MONERO_DOOM.rst Add comprehensive crypto payment state transition validation 2025-09-30 11:26:44 -04:00
notifications.md docs: notification system + design-system surface for offers/auctions 2026-05-14 14:49:39 -04:00
PAYPAL.md Add privacy warnings to PayPal docs, create Adyen integration doc 2025-12-22 16:11:54 -05:00
poc-cwe407.py docs: CWE-407 security section — bleach O(2^N) exposure and PoC 2026-03-29 21:19:59 -04:00
sandbox-mode.md docs: add MPS-6 through MPS-9 tickets, architecture diagram, update JS docs 2026-03-05 06:19:56 -05:00
state-machine.dot Update state machine documentation to use dash-separated naming 2025-10-04 13:02:07 -04:00
state-machine.dot.svg Update state machine documentation to use dash-separated naming 2025-10-04 13:02:07 -04:00
state-machine.png Fix DOGE fee calculation bug and improve UI consistency 2025-10-06 09:36:02 -04:00
state-machine.svg modified: Makefile 2025-09-30 15:43:54 -04:00
testing-performance.md Add comprehensive documentation for parallel test execution system 2026-01-21 12:25:41 -05:00
wordpress-import-html.dot docs: wordpress import pipeline architecture with dot diagrams 2026-03-12 11:32:47 -04:00
wordpress-import-html.dot.svg docs: wordpress import pipeline architecture with dot diagrams 2026-03-12 11:32:47 -04:00
wordpress-import-pipeline.dot docs: wordpress import pipeline architecture with dot diagrams 2026-03-12 11:32:47 -04:00
wordpress-import-pipeline.dot.svg docs: wordpress import pipeline architecture with dot diagrams 2026-03-12 11:32:47 -04:00
wordpress-import-pipeline.md docs: wordpress import pipeline architecture with dot diagrams 2026-03-12 11:32:47 -04:00