Three-layer dedup check before community post submission: - L1: title ILIKE search against existing posts in community DB - L2: Jaccard ingredient overlap using local corpus (≥0.70 very_similar, ≥0.35 somewhat_similar) - L3: similar_to_ref FK — user can explicitly mark post as variation of existing New endpoint: POST /api/v1/community/check-similar (gracefully no-ops if community DB absent) New service: app/services/community/dedup.py — jaccard(), similarity_tier(), build_similar_post_result() Both publish modals (plan + outcome) now check similarity before submit; user can proceed as-is, mark as variation, or cancel. similar_to_ref passed in final publish payload. |
||
|---|---|---|
| .. | ||
| assets | ||
| components | ||
| composables | ||
| services | ||
| stores | ||
| utils | ||
| App.vue | ||
| main.ts | ||
| style.css | ||
| theme.css | ||