andreagrandi / andreagrandi/draftomen

Parse human-draft picks and completion

Đang mở
#259 0 bình luận 0 reaction 0 người được giao Xem trên GitHub
draftomen enhancement size: M
Ngôn ngữ chính
Python
Star
0
Fork
0
Merge trung bình
1 giờ 21 phút
Pull request đã merge (30 ngày)
188

Mô tả

## Problem

The parser only consumes bot-draft pick messages and enforces exactly one selected card. Premier, Traditional, and Pick-Two use `EventPlayerDraftMakePick`, and private Pick-Two evidence directly shows two `GrpIds` in one submission plus a distinct completion message.

## Proposed change

Parse human-draft pick submissions and completion according to the detected format/rules contract. Treat `GrpIds` as a collection, correlate submissions with pack notifications, and handle missing/duplicate/truncated records without format guessing from cardinality when metadata is present.

## Acceptance Criteria

- [ ] Premier and Traditional one-card submissions produce one-card logical picks.
- [ ] Pick-Two two-card submissions retain both IDs in one logical pick.
- [ ] Explicit event metadata wins over payload-cardinality heuristics.
- [ ] Human-draft completion is recognized from observed messages without applying Quick Draft's 42-card inference globally.
- [ ] Missing submissions, failed-pick gaps, duplicate responses, and truncated envelopes do not crash or fabricate picks.
- [ ] Unknown human-draft events fail safely without contaminating the active draft.
- [ ] Hand-authored synthetic fixtures cover all supported message shapes; raw logs remain private.
- [ ] Existing Quick Draft behavior and focused parser tests pass, with a changelog entry.

## Scope notes

No persistence redesign beyond Child 2 and no frontend behavior.

Hướng dẫn đóng góp

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Hướng nghiên cứu

Start with the parser and existing focused parser tests, then use hand-authored synthetic fixtures to cover the supported message shapes described in the acceptance criteria. Done means human-draft submissions and completion are handled safely, missing or malformed records do not create false picks, existing Quick Draft behavior still passes, and the changelog is updated.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
python
Lĩnh vực
backend, testing
Loại issue
Tính năng
Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức độ hoạt động
Sôi nổi
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
45/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.