Story Share portal: anonymous public story submission
Maintainer thường phản hồi trong vòng 1 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức phù hợp với người mới
- 35/100
- Loại issue
- Tính năng
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Ít trao đổi
- Công nghệ
- ruby
- Lĩnh vực
- content, database, full-stack, security
Hướng nghiên cứu
Bắt đầu từ route của portal /story_shares và kiểm tra StoryIdea, StoryIdeaPolicy, schema story_ideas và AuthorCreditable; đối chiếu các trường được liệt kê với biểu mẫu WordPress /share/ và các ghi chú về quyền riêng tư của biểu mẫu đó. Lập bản đồ các yêu cầu về danh tính ẩn danh, ủy quyền khách, bảo vệ chống spam, sự đồng thuận và kiểm duyệt; việc hoàn thành yêu cầu đường dẫn ẩn danh phải bảo đảm quyền riêng tư và đi đến hàng đợi xem xét admin hiện có.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Context
The Story Share portal (/story_shares) now has a signed-in "Share your story" page that reuses the existing StoryIdea flow (see the portal-parity PR). This mirrors the live WordPress site's /share/ form in spirit, but the WP form is fully anonymous — any visitor can submit without an account.
Our StoryIdea model can't be anonymous today: it requires a created_by User and an organization_id drawn from the submitter's own organizations.
What's needed for anonymous submission
- Add submitter identity columns to
story_ideas(e.g.submitter_name,submitter_email, free-textsubmitter_organization) so a story can be attributed without a User/Organization record. - Attribute anonymous submissions to a system/sentinel user (or make
created_byoptional with a guard). - Relax
StoryIdeaPolicy#new?/create?to allow guests for the portal route only (keep the admin index/show gated). - Spam protection (reCAPTCHA/hCaptcha or honeypot + rate limiting) — the WP form is reCAPTCHA-gated.
- Consent checkbox matching the WP form's permission language.
- Moderation: anonymous submissions land in the existing admin review queue; titles are editorial (the WP form has no title field).
Parity notes (from stories.awbw.org research)
- WP
/share/fields: first/last name, name-display preference (full / first-only / hide), email (not published), organization (free text), state (free text), workshop name, featured image/video, YouTube URL, story body, additional images, category checkboxes (sectors), audience checkboxes, consent checkbox. No title. - WP's anonymity is a real privacy bug (full name is in the HTML, hidden with CSS; email is exposed via the open REST API). Our version must handle credit server-side via
AuthorCreditableand never render or expose hidden identity.
Out of scope
Signed-in submission already ships in the portal-parity work; this issue covers only the anonymous path.
- Ngôn ngữ chính
- Ruby
- Star
- 15
- Fork
- 28
- Merge trung bình
- 1 ngày 12 phút
- Pull request đã merge (30 ngày)
- 262
Chuẩn bị môi trường
Khởi chạy dev container của dự án ngay trên trình duyệt, bằng tài khoản GitHub của bạn.
- Có Dockerfile hoặc tệp Docker Compose
- Có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của rubyforgood/awbw
-
blocked
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
rubyforgood/awbw#2824 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
rubyforgood/awbw#2822 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
rubyforgood/awbw#2160 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Update callout faq defualt text when the new person subscription launchesCó thể đã có người làm @maebeale đã nhận 81 ngày trước. Đang mởblocked
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
rubyforgood/awbw#2095 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 84/100
rubyforgood/awbw#2088 ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của rubyforgood/awbw
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 80/100
Maintainer thường phản hồi trong vòng 2 ngày
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 82/100
matteocrippa/awesome-swift#2028 ·
Maintainer thường phản hồi trong vòng 3 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
fractaledmind/litestream-ruby#89 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 1/5 1-3 giờ Mức phù hợp với người mới 78/100
resque/resque-scheduler#848 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 78/100
voxpupuli/puppet-patroni#126 ·