← back to Sample Followup Sweep
TK-11409: anti-dup keys on the CHASE subject, not the new-order subject (DTD 6/7 verdict B)
b4d9ec1b7c116a07ec728909c7bf8116bd6b27dc · 2026-09-10 11:51:16 -0700 · Steve Abrams
The filter matched subject:'New Sample Request' -- a brand-new ORDER, a different
message type that happens to go to the same vendor desk. So a chase was suppressed
because we had placed an order. Our busiest accounts (Kravet, Thibaut, Osborne, York)
get orders almost daily and were therefore effectively un-chaseable; 33 overdue memos
went unchased for weeks.
Now matches the chase letter's own subject. The -subject:'Re:' exclusion is load-bearing,
not cosmetic: verified against 90 days of info@ Sent, a bare subject:'Sample Follow-Up'
also matches humans replying inside a chase thread AND the 'HAPPY LABOR DAY FROM DW! Re:'
auto-responder -- so without it this fix would have traded one over-suppression bug for
a new one. That correction came from the reviewer's dissent, after the panel had voted.
Verified live: 10 matches, 0 Re:/autoresponder false positives, suppressed recipients
40 -> 10.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Files touched
M scripts/scheduled-run.mjs
Diff
commit b4d9ec1b7c116a07ec728909c7bf8116bd6b27dc
Author: Steve Abrams <steve@designerwallcoverings.com>
Date: Thu Sep 10 11:51:16 2026 -0700
TK-11409: anti-dup keys on the CHASE subject, not the new-order subject (DTD 6/7 verdict B)
The filter matched subject:'New Sample Request' -- a brand-new ORDER, a different
message type that happens to go to the same vendor desk. So a chase was suppressed
because we had placed an order. Our busiest accounts (Kravet, Thibaut, Osborne, York)
get orders almost daily and were therefore effectively un-chaseable; 33 overdue memos
went unchased for weeks.
Now matches the chase letter's own subject. The -subject:'Re:' exclusion is load-bearing,
not cosmetic: verified against 90 days of info@ Sent, a bare subject:'Sample Follow-Up'
also matches humans replying inside a chase thread AND the 'HAPPY LABOR DAY FROM DW! Re:'
auto-responder -- so without it this fix would have traded one over-suppression bug for
a new one. That correction came from the reviewer's dissent, after the panel had voted.
Verified live: 10 matches, 0 Re:/autoresponder false positives, suppressed recipients
40 -> 10.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
---
scripts/scheduled-run.mjs | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/scripts/scheduled-run.mjs b/scripts/scheduled-run.mjs
index 01a47c8..5e7a8b9 100644
--- a/scripts/scheduled-run.mjs
+++ b/scripts/scheduled-run.mjs
@@ -210,7 +210,16 @@ function georgeDraft(payload) {
// (harvested straight from info@ Sent via George). Self-updating — no manual list to maintain.
function georgeRecentRecipients(days = 14) {
const { auth } = georgeCreds();
- const q = encodeURIComponent(`in:sent subject:"New Sample Request" newer_than:${days}d`);
+ // DTD 6/7 verdict B (2026-09-10, TK-11409). The old query matched subject:"New Sample Request"
+ // — a brand-new ORDER, a DIFFERENT message type that happens to go to the same vendor desk. So a
+ // chase was suppressed because we'd placed an order. Our busiest accounts (Kravet, Thibaut,
+ // Osborne, York) get orders almost daily, so they were effectively un-chaseable: 33 overdue memos
+ // went unchased for weeks. Now it matches the CHASE letter's own subject.
+ // The `-subject:"Re:"` exclusion is NOT cosmetic — verified against 90 days of info@ Sent, a bare
+ // subject:"Sample Follow-Up" also matches (a) humans replying inside a chase thread and (b) the
+ // "HAPPY LABOR DAY FROM DW! Re: Sample Follow-Up …" auto-responder. Without it this fix would
+ // trade one over-suppression bug for a new one.
+ const q = encodeURIComponent(`in:sent subject:"Sample Follow-Up — Outstanding Memos" -subject:"Re:" newer_than:${days}d`);
return new Promise((resolve) => {
const req = http.request({ host: '127.0.0.1', port: 9850, path: `/api/messages?account=info&maxResults=100&q=${q}`, method: 'GET',
headers: { Authorization: auth } },
← b128bf8 auto-data-snapshot: 2026-09-10T11:43:04 (2 data files) — dat
·
back to Sample Followup Sweep
·
TK-11409: rescue the text of two Aug-15 drafts ~4 days from 42b4eba →