Skip to main content

Scope

DCinside sends the full extraction queue and logs would-be picks while operators continue publishing. Surf does not publish during the scoring-only rehearsal. The publishing API is a dependency for later publishing stages, not for this rehearsal. Operator suitability, duplicate review and overlap with operator picks are reviewed separately and are not scoring-rehearsal pass criteria. The client-facing weight-management and outcomes endpoints remain outside this integration. Daily operator outcomes are shared separately; a long-lived upload destination for 1/6/24/48-hour counts and hide times remains a readiness item.

Acceptance criteria

These criteria incorporate DCinside’s September 30 reply and subsequent operator-independent pool policy. The earlier first-score-or-25-minute hold was never activated. The proposed new switch, 2026-10-15 00:00 KST / cycle 20261015T0000, is not confirmed; record the actual switch and cohort assignment without silently reclassifying historical measurements. Whether to backfill previously removed posts remains undecided; resending does not revive them. Passing code tests or a short load test does not establish the three-day SLA. A late response or GET recovery can reconcile data but never turns a missed decision deadline into a success. Semantic LLM deduplication is optional and is not a prerequisite for this scoring-only SLA. The sender owns retention, deletion/age removal delivery and operator labels. First-score reconciliation is calculated separately from unique post identities and score results; API counters do not provide a built-in SLA calculator. Hidden alone does not veto picks; the client skips actual current-board posts, and operator intervention follows publication/unpublication. API last-20 tier windows are not a complete board inventory. Compare post-decision scores separately because they use cycle-time evidence. See the worker handoff. The projected average 1,960 / peak 2,220 pending posts requires representative capacity verification, including near-24-hour histories and dedup work. Current-pool latency and the 5,000-row per-array protection do not prove the new pool meets the 60-second deadline. Pre-send engagement collection is outside that response budget. See service protections.

Agreed integration and remaining readiness

The implementation stores receipts, prepared cycles, queue state and immutable final results durably. For newly prepared cycles, scored_at records raw model score completion before the bounded deduplication wait; subtracting received_at from it does not measure final response latency. The 15-minute eligibility gate does not wait for image uploads. Source implementation and local test results must be distinguished from deployed and jointly observed SLA evidence.

Later publishing stages

Stage 1 covers hours without assigned operators: outside weekday 09:30–18:30 KST, plus weekends and public holidays, on Main and Light. DCinside may start at 02:00–07:00 and expand in steps as its own schedule setting. The Night tier stays out. Daytime interleaving during operator hours remains Stage 2; publishing controls remain DCinside’s responsibility.

Source messages

These source links require access to the shared Slack channel.