Skip to content

feat(email): track deliverability#301

Open
dargmuesli wants to merge 1 commit into
mainfrom
feat/email/deliverability
Open

feat(email): track deliverability#301
dargmuesli wants to merge 1 commit into
mainfrom
feat/email/deliverability

Conversation

@dargmuesli
Copy link
Copy Markdown
Member

This pull request introduces a new table to track email addresses with deliverability issues (such as bounces, complaints, and unsubscribes) in the vibetype_private schema. The implementation includes a new enum type for email address status, associated constraints, metadata triggers, and relevant schema updates for migration and verification. The changes also include the necessary revert and verification scripts, as well as updates to the test schema fixtures.

Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a new deliverability-tracking data model in the vibetype_private schema to persist email addresses that should be treated as bounced/complained/unsubscribed, including migration + revert + verification wiring via Sqitch and updated test schema fixtures.

Changes:

  • Introduces vibetype_private.email_address_status enum and vibetype_private.email_address table with constraints, FK to vibetype.account, index, and metadata update trigger.
  • Adds Sqitch deploy/revert/verify scripts for the new table and updates sqitch.plan.
  • Updates the SQL test fixture schema to include the new type/table/index/trigger definitions.

Reviewed changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
test/fixture/schema_vibetype.definition.sql Updates test fixture schema to include the new enum, table, constraints, index, and trigger.
src/deploy/table_email_address.sql Deploys the new enum + table + index + metadata trigger in vibetype_private.
src/revert/table_email_address.sql Reverts the new enum/table/trigger (migration rollback).
src/verify/table_email_address.sql Adds verification script for the new table.
src/sqitch.plan Registers the new change in the Sqitch plan with dependencies.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/deploy/table_email_address.sql
Comment thread test/fixture/schema_vibetype.definition.sql
Comment thread src/verify/table_email_address.sql Outdated
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Apr 20, 2026

Database Query Performance

✅ No significant regressions detected

Query Role Base (ms) PR (ms) Delta
account_block_ids account 0.026 0.026 (0%)
account_block_ids anonymous 0.021 0.021 (0%)
account_search account 1.873 1.863 (-0.5%)
attendance_claim_array account 0.024 0.024 (0%)
attendance_claim_array anonymous 0.024 0.024 (0%)
event_guest_count_maximum account 0.023 0.023 (0%)
event_guest_count_maximum anonymous 0.038 0.038 (0%)
event_search account 42.148 42.806 (+1.6%)
event_search anonymous 42.199 42.775 (+1.4%)
events_invited account 13.761 14.258 (+3.6%)
events_invited anonymous 13.711 13.904 (+1.4%)
guest_claim_array account 0.026 0.026 (0%)
guest_claim_array anonymous 0.026 0.026 (0%)
guest_count account 0.020 0.020 (0%)
guest_count anonymous 0.020 0.020 (0%)
select_accounts account 0.221 0.221 (0%)
select_accounts anonymous 0.157 0.157 (0%)
select_attendance account 4.422 4.610 (+4.3%)
select_attendance anonymous 3.862 3.849 (-0.3%)
select_contacts account 22.271 22.577 (+1.4%)
select_contacts anonymous 20.232 20.379 (+0.7%)
select_events account 42.066 42.759 (+1.6%)
select_events anonymous 41.607 42.265 (+1.6%)
select_guests account 17.922 18.194 (+1.5%)
select_guests anonymous 15.703 15.914 (+1.3%)
Details
  • Threshold for regression warnings: >15% and ≥1ms absolute change
  • Deltas in parentheses indicate that the absolute change is below the minimum threshold
  • Each measurement discards the first (cold-cache) execution, then reports the median of all subsequent runs within a 5-second time budget
  • Timings use clock_timestamp() with JIT compilation and synchronized sequential scans disabled
  • Data: 1000 accounts, 100 events, 1000 contacts, ~1000 guests, 200 attendances
  • Runner: GitHub Actions (timings may vary ±10% between runs)
  • Workflow run

@dargmuesli dargmuesli force-pushed the feat/email/deliverability branch from c162481 to 13f99ad Compare April 20, 2026 09:24
@dargmuesli dargmuesli marked this pull request as ready for review April 20, 2026 09:24
@dargmuesli dargmuesli requested a review from Copilot April 20, 2026 09:24
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 5 out of 5 changed files in this pull request and generated 4 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/deploy/table_email_address.sql
Comment thread src/deploy/table_email_address.sql Outdated
Comment thread src/verify/table_email_address.sql
Comment thread src/revert/table_email_address.sql Outdated
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 5 out of 5 changed files in this pull request and generated 1 comment.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/deploy/table_email_address.sql
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 5 out of 5 changed files in this pull request and generated 3 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/deploy/table_email_address.sql
Comment thread src/revert/table_email_address.sql
Comment thread src/verify/table_email_address.sql
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 5 out of 5 changed files in this pull request and generated 1 comment.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/revert/table_email_address.sql
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.

2 participants