**Monitor the inbound lead paths, not just the pages.** `site-check.js` proves 13 pages return 200 and that Cal.com/Formspree/Base44 are *reachable*, but nothing verifies a lead actually arrives: the site publishes `info@` and `support@tech-d-enterprises.com` while both mailboxes live on the **singular** domain behind Cloudflare Email Routing, and no check sends a probe through that route or through the Formspree form. Benefit: today a silent routing failure would delete every inbound web lead and the dashboard would stay green — this is the largest unmonitored single point of failure on the web side. (Takes the slot of the Google-review responder proposal, **parked** 2026-08-04 — not retired, and the reason has been corrected: I first wrote that the GBP appeal "was denied", which came from the content agent's phrasing "*looks* unavailable". I then searched all three mailboxes over 14 days and found **no decision email at all**, so the appeal's status is genuinely unknown and only Steve can settle it. Parked because it is blocked either way; if the profile turns out to be live, it comes straight back.)
Add `reply` + `ring` columns to contacted-log.csv and score sourcing channels by reply rate instead of rubric points. Benefit: the prospect agent is at 94% on its own rubric and has zero outcome data — it is currently optimizing against its own judgment, not against what earns replies. *(Still the right idea and now sharper: 25 sends, 0 replies.)*
Invoice-chaser agent wired to the paypal-invoicer app — needs a design chat with Steve first. Benefit: unpaid invoices never slip.
1. §1 still describes the old hardcoded 5–6 page list; `site-check.js` now
2. §3 still describes a two-outcome deploy audit. There are three —
3. §5 says "if Gmail is available, draft the alert." The Gmail tool is
4. The JD does not mention the peer-liveness duty (no deploy entry *and* no
1. ~~**Add a YouTube option** to the question.~~ **DONE 2026-08-03** — Steve
2. ~~**Name one owner** for a shared attribution ledger.~~ **DONE 2026-08-03**
A **Cal.com API key** (cal.com → Settings → Developer → API keys), stored the
Approval to write `connectors\calcom-connector.js`. **Shared code is Steve-only**,
**`require()` executed the whole CLI** — the suite's first run printed
**The attribution matcher missed every real booking.** Cal.com slugifies
`usage` demanded an API key to tell you what the commands are.
Median inbound-lead → draft time falls below **5 minutes** (today: up to 30, and
Zero follow-ups sent to a prospect who had already replied.
A finding raised by one agent about another reaches a decision **inside 24
`TODAY.md` overflow tail **shrinks** run-over-run. If Tier 1 ships and the tail
**Approve or reject Tiers 1 and 2** (Tier 3: my recommendation is defer).
**Tier 1 is blocked on you specifically** — configuring a Cal.com and a
~~**Confirm the injection rule as a standing design constraint**~~ ✅ **DONE
Recent manager changes
2026-08-06 (evening) — **NEEDS STEVE — one line in `_redirects`, and it is the highest-impression defect on the site.** Found by the SEO agent while doing GSC work at Steve's instruction. **`/faq/what-is-the-30-percent-rule-for-ai` returns 404 and has 177 impressions over the last three months**, fed by two of the site's top-10 queries ("what is the 30% rule for ai?" 52, "what is the 30% rule in ai?" 51). It is a Squarespace-era URL that never got a redirect stub, unlike `/ai-prompt-lab`, `/book-a-free-ai-consultation` and `/prompt-tools`, which all 301 correctly. The content still exists — `/faq/` carries "What is the 30% rule for AI?" and its answer in both the visible list and the FAQPage schema — so a 301 to `/faq/` is honest, not a paper-over. **`_redirects` is on the SEO agent's never-touch list, so this is Steve's to make.** — **And the bigger finding behind it: Search Console has TWO verified properties and the team has been reading the empty one.** `sc-domain:tech-d-enterprises.com` was created 2026-08-03 and has three days of history; `https://www.tech-d-enterprises.com/` has been collecting since at least 2026-05-05. **Three months of real data existed the whole time** — 5 clicks, 1,540 impressions, 0.3% CTR, average position 56.1, 57 queries, 16 pages. Every "flying blind" line in `SEO-LOG.md` was true of the property being read and false of the site. Recorded in `GSC-DATA.md` as an agent-collected block. Also closed today, early: the sitemap reads **Success, last read Aug 6 2026, 15 discovered pages** — the Nov 2025 / 41-page picture that drove roadmap item 1 is gone, and nothing about the sitemap was ever broken.
2026-08-06 — **NEEDS STEVE (from the SEO agent's Thursday run): one yes/no on `/ai-ad-maker/` schema, and a correction to the ticket that raised it.** Request R3 (filed 8/5 on site-health's behalf) said `/ai-ad-maker/` is "the only commercial page on the site with no structured data." **The page's half is true — I confirmed 0 `application/ld+json` blocks on the live page. The "only" is not: 8 of the 14 live pages carry none**, and the list includes `/appointments/`, which is the page this role's own Tier-1 measurement names. So the ticket pointed at a real gap using a priority claim that does not survive checking; re-scoped as roadmap item 13 (schema coverage is 6 of 14, `/appointments/` first). **The ask for Steve is one line:** may the already-published offer — *"10 free ads every month, no credit card required"*, live in the page's own meta description and its "Start Free — 10 Ads a Month" button — be encoded as a `price: 0` `offers` node in a `WebApplication` block? It is Steve's call because it is a published claim, and claims are always-routed. Why I did not just ship the safe half: a `WebApplication` block **without** the offer node produces no rich result, so it would mean editing the page twice — once hollow now, once properly when he answers — which is the churn the brain file exists to prevent. Not urgent; one sentence unblocks one clean edit at the next structured-data slot.
2026-08-05 — **RESOLVED (was NEEDS STEVE item 1 today): request R2 is DONE and live.** The online-booking objection is answered on `/faq/` as item 3 of 25, in both the visible list and the FAQPage schema (deployment `397d16df`). Routed to Steve at midday as positioning copy; he approved the wording and shipped it the same evening. **The answer was transcribed from Steve's own published note** "Half this job is telling people they don't need me", not drafted fresh — line-by-line provenance in `content-queue\DRAFT-faq-booking-objection.md`. No claim, price or statistic introduced; no business named. This closes the objection that disqualified 6 of 16 researched prospects on 8/4. **Note on cadence: today ran THREE deploys against a one-per-run cap, all three overridden by Steve knowingly and in live chat.** Logged in each `DEPLOYS.md` entry rather than passed over — the cap still governs unattended runs and no agent may grant itself the exception. Site-health has three entries to audit tonight.
2026-08-05 — **RESOLVED (was NEEDS STEVE item 2 above): `/ai-ad-maker/` is now committed.** Two commits on `master` in `techd-website`: `c318ddf` (the page, 6 ad-sample assets, nav/footer links across all 15 pages, and its registration in `build-content.js` HAND_PAGES/nav/footer plus `build-deploy.js` PAGE_DIRS) and `b4edab1` (the `/about/` Person schema, kept separate as an unrelated change that shared a file). Tree clean; `/about/` schema in HEAD verified byte-identical to production. **Two things for Steve, neither urgent.** (a) **Two agents committed to this repo concurrently.** My staged index was committed at 07:35 under someone else's message and identity, and the reflog shows my second commit reset away and then restored while I verified. End state is correct, but the repo has no locking, and for a few minutes it was missing markup production was serving — caught only because the file had been backed up first. Worth settling before more agents get commit rights. (b) **A committed but undeployed content change is now sitting in the repo:** `c318ddf` swept in a regenerated `notes\index.html` with today's note "Half this job is telling people they don't need me" (2026-08-05), which is not live. The next agent to deploy anything will publish it as a side effect. Fine if intended; flagged because it is invisible otherwise.
rebuild: node build-dashboard.js · task the team: directives.md · retrain an agent: edit its brain .md