Delete free-copy book bait Laya keeps under the gate (#153) #52

Merged
backmeupplz merged 17 commits from feat/153-book-dm-bait into main 2026-10-21 17:20:01 +00:00
backmeupplz commented 2026-10-21 14:52:52 +00:00 (Migrated from github.com)

Closes agentboard #153 (https://agentboard.icefish-betta.ts.net/#153).

Adds a fifth bot-side ad-shape rule, book_copy_offer, for the recurring free-audiobook DM bait ("Недавно послушал «Время деньги» Генри Форда… Есть хорошая аудиоверсия. Если кому интересно пишите в личку, отправлю."), which Jev kept at 0.17–0.73.

Shape (in sentences that ask nothing, quoted spans removed):

  • a reviewed work (book, audiobook, audio/text version, a course the author took, or a quoted title right after a reading verb) and a verb by which the author read, heard or took it or praises it;
  • a first-person offer to send the copy ("могу скинуть/переслать", "готов поделиться", "отправлю", "I can send", "DM me for the PDF"), where what is sent must be the copy: the offer ends its clause or names the work, a format or a recipient, and it points back at the work with only plain, praise, interest or DM words between them (so "Рецепт пирога могу скинуть" or "Сделала конспект, если кому надо, скину" stays kept);
  • an interest or DM cue ("если кому интересно", "если есть желание", "пишите в личку", "if anyone's interested").

It never matches public copies (links, libraries, stores, apps), requests and swaps, reports, warnings and rule reminders, @-addressed messages, or replies to a member's book request.

Prompt, model, the 0.80 gate and PATTERN_MIN_SCORE are unchanged; the other four rules' match sets are identical to main on the capture.

Prod capture replay (148,722 texts, 2026-10-06 to 2026-10-21): 10 matches, all of them this campaign, and 0 false positives. 9 are new deletions at the 0.20 floor from #152 (7 in 0.30–0.80, 2 in 0.20–0.30), and 1 is under 0.20 (0.168), where it only logs.

Tests: incident, family paraphrases, held-out RU/EN ads, controls, the requested-answer exemption, a pinned review corpus (357 ads / 515 conversations from the implementer and the Astra rounds, with exact known residuals), 4,096-char perf inputs, and bot-level delete/keep/floor routing. bun run typecheck and bun test pass.

Closes agentboard #153 (https://agentboard.icefish-betta.ts.net/#153). Adds a fifth bot-side ad-shape rule, `book_copy_offer`, for the recurring free-audiobook DM bait ("Недавно послушал «Время деньги» Генри Форда… Есть хорошая аудиоверсия. Если кому интересно пишите в личку, отправлю."), which Jev kept at 0.17–0.73. **Shape** (in sentences that ask nothing, quoted spans removed): - a reviewed work (book, audiobook, audio/text version, a course the author took, or a quoted title right after a reading verb) and a verb by which the author read, heard or took it or praises it; - a first-person offer to send the copy ("могу скинуть/переслать", "готов поделиться", "отправлю", "I can send", "DM me for the PDF"), where what is sent must be the copy: the offer ends its clause or names the work, a format or a recipient, and it points back at the work with only plain, praise, interest or DM words between them (so "Рецепт пирога могу скинуть" or "Сделала конспект, если кому надо, скину" stays kept); - an interest or DM cue ("если кому интересно", "если есть желание", "пишите в личку", "if anyone's interested"). It never matches public copies (links, libraries, stores, apps), requests and swaps, reports, warnings and rule reminders, @-addressed messages, or replies to a member's book request. Prompt, model, the 0.80 gate and `PATTERN_MIN_SCORE` are unchanged; the other four rules' match sets are identical to `main` on the capture. **Prod capture replay** (148,722 texts, 2026-10-06 to 2026-10-21): 10 matches, all of them this campaign, and 0 false positives. 9 are new deletions at the 0.20 floor from #152 (7 in 0.30–0.80, 2 in 0.20–0.30), and 1 is under 0.20 (0.168), where it only logs. **Tests:** incident, family paraphrases, held-out RU/EN ads, controls, the requested-answer exemption, a pinned review corpus (357 ads / 515 conversations from the implementer and the Astra rounds, with exact known residuals), 4,096-char perf inputs, and bot-level delete/keep/floor routing. `bun run typecheck` and `bun test` pass.
Sign in to join this conversation.
No description provided.