Skip to content

to main#835

Merged
JoshuaVSherman merged 5 commits into
mainfrom
dev
Jun 21, 2026
Merged

to main#835
JoshuaVSherman merged 5 commits into
mainfrom
dev

Conversation

@JoshuaVSherman

Copy link
Copy Markdown
Contributor

No description provided.

JoshuaVSherman and others added 5 commits June 21, 2026 06:51
Mongo `outreach` collection + gated CRUD/send at /outreach, mirroring
venue (#819) and template (#822). POST /outreach/send renders a template
for a venue, personalizes the [Contact Name]/[Venue Name]/[Booking
Period]/[Target Dates] tokens, emails the pitch (CC Josh + Maria, footer
photo inline-CID), and writes an outreach record; dedup guard refuses a
double-pitch for the same venue + target window. Gated by outreach:*
capabilities on the shared web-jam-llm AI-agent identity.

- mailer: add cc + inline-CID attachments, return the Message-ID
- copy:assets build step so the bundled footer jpg lands in build/
- 21 new tests; full suite 232 green, lint + typecheck clean

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- vitest.config: thresholds (statements/lines 90, branches/functions 80);
  npm test now runs with --coverage so the gate fails CI below floor
- README: static shields.io coverage badge (no third-party account) +
  documented the gate
- add outreach controller error-path tests for headroom above 90%
- bump version 2.0.24 -> 2.0.25

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
feat(outreach): Outreach-log collection + send-pitch endpoint
#823 gated the outreach controller on outreach:create/edit/delete but
never added them to the capability registry, so grants didn't validate
and the Admin UI couldn't offer them. Register the three caps, and add a
guard test that walks every *-controller.ts and asserts each capability
literal it gates on exists in CAPABILITIES — turning a future
unregistered cap into a red test instead of a silent Admin-UI gap.

- bump version 2.0.25 -> 2.0.26

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
fix(auth): register outreach:* capabilities + guard test (follow-up to #823)
@JoshuaVSherman JoshuaVSherman merged commit 6e9428a into main Jun 21, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant