make_post_sell/docs
russell@unturf.com 5dbbe697b6
feat: MPS-24 Phase 2 — auto-suggest tags from title + description
Operator with 481 untagged products (printableprompts.com) gets a
one-click path to a usable categorization without hand-tagging each
product. Strictly suggest-then-approve — nothing writes Tag or
ProductTag rows until the operator clicks Apply on a cluster.

- lib/tag_suggest.py: pure-function clusterer. Tokenize title (weight 3)
  + description (weight 1, capped at 100 unique tokens per product),
  strip markdown / URLs / HTML, English + per-shop stopwords, simple
  suffix-strip stemmer, group by stem, drop stems matching existing
  tag slugs, rank by product count, label each cluster with the most
  frequent original word for its stem. No new deps, no ML.
- scripts/backfill_tags.py: CLI preview + --apply for a single shop.
- views/shop.py: shop_tags gains action=apply_suggestion (creates tag +
  bulk-attaches every product in cluster) and action=dismiss_suggestion
  (adds the cluster's words to shop.tag_stopwords_json so it never
  resurfaces). ?show_suggestions=1 triggers the cluster compute.
- templates/shop_tags.j2: "Suggest categories from titles + descriptions"
  button + suggestions well with per-cluster sample titles, Apply, and
  Dismiss buttons.
- 15 new tests (11 unit over tokenize / stem / cluster + 4 functional
  over the suggest/apply/dismiss flow). 1064 total passing.

On a printableprompts-style sample the clusterer surfaces Math, Reading,
Literacy, Seasonal, Novel, Activities, Comprehension — matching what an
operator would manually pick.
2026-05-15 09:09:40 -04:00
..
tickets feat: MPS-24 Phase 2 — auto-suggest tags from title + description 2026-05-15 09:09:40 -04:00
ADYEN.md Add Adyen payment integration 2025-12-22 17:16:54 -05:00
architecture.md feat: MPS-24 Phase 2 — auto-suggest tags from title + description 2026-05-15 09:09:40 -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 feat: MPS-24 Phase 2 — auto-suggest tags from title + description 2026-05-15 09:09:40 -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