تقرير عن خطأ: "تحديد موضوع الوسم تلقائيًا" في أتمتة Discourse — عدم عمل اكتشاف الروابط، ومحفز Onebox يعرض صورة

لقد كنت أختبر ميزة “وضع علامة تلقائية على الموضوع” في Discourse Automation plugin، وقد واجهت بعض السلوكيات غير المتوقعة مع شروط link و image.

:white_check_mark: ما يعمل وما لا يعمل

شرط Image:

  • تحميل صورة (عبر السحب والإفلات أو تحميل الملف) يشغل الأتمتة بشكل صحيح.
  • إذا كان الموضوع يتضمن Onebox (على سبيل المثال، من Twitter أو YouTube أو GitHub)، فيمكنه أيضًا تشغيل شرط image، ويرجع ذلك على الأرجح إلى صورة المعاينة المضمنة.
  • :white_check_mark: لحسن الحظ، روابط الصور العادية (على سبيل المثال، Markdown أو عناوين URL .jpg العادية) لا يتم التعرف عليها بشكل خاطئ على أنها تحميلات - هذا تمييز مفيد ويتجنب وضع العلامات غير الصحيحة.

شرط Link:

  • شرط link لا يتم تشغيله على الإطلاق، بغض النظر عن كيفية إضافة الرابط:
    • [Example](https://example.com) (Markdown)
    • https://example.com (عنوان URL عادي)
    • الروابط التي تنشئ Oneboxes
    • الروابط التي لا تنشئ Oneboxes

هذا يجعل خيار link غير موثوق به حاليًا أو ربما معطلاً.


:pushpin: ملخص

الشرط يعمل؟ ملاحظات
Upload :white_check_mark: نعم يتم تشغيله بشكل موثوق
Image :warning: جزئيًا التحميلات تعمل؛ Oneboxes تشغل هذا أيضًا
Code :white_check_mark: نعم يعمل كما هو متوقع
Link :cross_mark: لا لا يتم تشغيله في أي سيناريو تم اختباره

إذا كان سلوك link الحالي غير مقصود، آمل أن يتم معالجته في تحديث مستقبلي.
شكرًا على كل العمل الذي تم في هذا المكون الإضافي - إنه أداة قوية يمكن أن تكون أفضل مع بعض التحسينات.

مرحباً،

من المدهش بالنسبة لي لأن لدينا اختبارًا صريحًا لهذا:

it "fires the trigger when post has a link" do
  list =
    capture_contexts do
      PostCreator.create(
        user,
        raw: "Check out this [link](https://example.com)",
        topic_id: topic.id,
      )
    end

  expect(list.length).to eq(1)
  expect(list[0]["kind"]).to eq("post_created_edited")
end

هل يمكنك تزويدي بلقطة شاشة للأتمتة بأكملها التي تحاولها، والنص الخام للمنشور الذي لم يؤدي إلى تشغيلها من فضلك؟

:green_circle: تحديث (تم الحل)
شرط link يعمل بشكل صحيح - كانت مشكلتي بسبب قيود العلامات التي تقتصر على فئات معينة.

بالإضافة إلى ذلك، وجدت أن كل من Oneboxes وروابط الصور تؤدي إلى تشغيل كل من شرطي link و image.
أود أن أطلب طريقة للتمييز بين الصور التي تم تحميلها وروابط الصور، بحيث يتم تشغيل علامات image فقط للصور التي تم تحميلها.

هذا التمييز مهم لأن بعض الإضافات (مثل Topic List Previews) تنشئ فقط صورًا مصغرة معاينة للصور التي تم تحميلها - وليس لروابط الصور الخارجية.

إعجاب واحد (1)