← back to Rentv Sheet Enrich
SAFETY: fail-closed RENTV email kill switch (Steve directive 2026-08-15 — no rentv emails to anyone)
c57888aa40a1ad71a7d756c6225698a3a8e3d33d · 2026-08-15 08:24:03 -0700 · Steve Abrams
Files touched
A data/cody_held.txtM data/searched_names.txtA outreach/SEND_BLOCKEDM outreach/rentv_send_purelymail.py
Diff
commit c57888aa40a1ad71a7d756c6225698a3a8e3d33d
Author: Steve Abrams <steve@designerwallcoverings.com>
Date: Sat Aug 15 08:24:03 2026 -0700
SAFETY: fail-closed RENTV email kill switch (Steve directive 2026-08-15 — no rentv emails to anyone)
---
data/cody_held.txt | 1 +
data/searched_names.txt | 8 ++++++++
outreach/SEND_BLOCKED | 2 ++
outreach/rentv_send_purelymail.py | 25 ++++++++++++++++++++++---
4 files changed, 33 insertions(+), 3 deletions(-)
diff --git a/data/cody_held.txt b/data/cody_held.txt
new file mode 100644
index 0000000..2619e21
--- /dev/null
+++ b/data/cody_held.txt
@@ -0,0 +1 @@
+John Mastin @ Latitude 33 Development -> /in/john-mastin-83376114 (Cody: common name, needs external corroboration)
diff --git a/data/searched_names.txt b/data/searched_names.txt
index 96ed5f3..a1556b9 100644
--- a/data/searched_names.txt
+++ b/data/searched_names.txt
@@ -200,3 +200,11 @@ Jason Larian
Jay Nugent
Jay Ramos
Jenilee Miller
+Jermey Berger
+Jerry Roberts
+Jim McGill
+Joe Vale
+Joey Hamilton
+John Bacon
+John Devereaux
+John Mastin
diff --git a/outreach/SEND_BLOCKED b/outreach/SEND_BLOCKED
new file mode 100644
index 0000000..16f92d6
--- /dev/null
+++ b/outreach/SEND_BLOCKED
@@ -0,0 +1,2 @@
+RENTV EMAIL SEND BLOCKED by Steve directive 2026-08-15: "do not allow any rentv emails to be sent to anyone."
+Remove this file to re-enable. Owner: rentv-bloom / TK-10579.
diff --git a/outreach/rentv_send_purelymail.py b/outreach/rentv_send_purelymail.py
index 4da884c..ab32cbc 100644
--- a/outreach/rentv_send_purelymail.py
+++ b/outreach/rentv_send_purelymail.py
@@ -37,6 +37,17 @@ def arg(name, default=None):
FROM = arg("--from")
SEND = ("--send" in sys.argv) and ("--i-am-steve" in sys.argv)
+# ── HARD KILL SWITCH (Steve directive 2026-08-15: "do not allow any rentv emails to be
+# sent to anyone"). Fail-closed: while ANY block sentinel exists, ALL real sends are
+# refused — even with --send --i-am-steve. Remove the sentinel files to re-enable.
+_BLOCKS = [os.path.join(HERE, "SEND_BLOCKED"),
+ os.path.expanduser("~/.claude/rentv-EMAIL-SEND-BLOCK")]
+_BLOCKED = next((p for p in _BLOCKS if os.path.exists(p)), None)
+if _BLOCKED and SEND:
+ print(f"\n⛔ SEND BLOCKED by kill switch: {_BLOCKED}\n"
+ " RENTV email sending is disabled by Steve's standing directive (2026-08-15).\n"
+ " Forcing DRY-RUN. Delete the sentinel file(s) to re-enable sending.")
+ SEND = False
PER_DAY = int(arg("--per-day", 40))
PASS_ENV = os.environ.get("SMTP_PASS_ENV") # name of the env var holding the mailbox password
@@ -44,9 +55,17 @@ FOOTER = ("\n\n—\nSteven Bloom · Founder & CEO, RENTV\n"
"5757 W. Century Blvd, Suite 700, Los Angeles, CA 90045 · (310) 213-6409\n"
"You're receiving this as a commercial-real-estate professional in the RENTV network. "
"If you'd prefer I not email you, just reply STOP and I won't follow up.")
-SUBJECT = "[DRAFT — replace me] Quick note from RENTV"
-BODY = ("Hi {first},\n\n[DRAFT PLACEHOLDER — not the real message. Define the purpose "
- "(RENTV platform intro / event invite / sublease-desk / newsletter), then personalize.]\n\nBest,\nSteven")
+# Variant A — honest RENTV network/coverage intro (Steve chose 2026-08-15). No unverifiable claims.
+SUBJECT = "{first}, RENTV covers your market — quick intro"
+BODY = ("Hi {first},\n\n"
+ "I'm Steven Bloom, founder of RENTV — we cover commercial real estate news, deals, and the "
+ "people moving the market. {company} keeps coming up in the deals and coverage we track, so I "
+ "wanted to introduce myself directly.\n\n"
+ "If you've got a closing, a listing, a hire, or a market take worth putting in front of a "
+ "commercial-real-estate audience, we're an easy, no-cost way to get it seen. And if you'd just "
+ "like to be on our radar for coverage, reply and I'll make sure you are.\n\n"
+ "Worth a quick look? Happy to send our latest issue or set up 10 minutes.\n\n"
+ "Best,\nSteven")
def load_verified():
with open(READY) as f:
← af2fa34 auto-data-snapshot: 2026-08-15T08:12:28 (1 data files) — dat
·
back to Rentv Sheet Enrich
·
Add coverage/quality report for completed RENTV CRE dataset 0216cda →