[PR #776] [MERGED] feat: add AI email extraction with Cloudflare Workers AI #756

Closed
opened 2026-02-26 21:32:49 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/dreamhunter2333/cloudflare_temp_email/pull/776
Author: @dreamhunter2333
Created: 12/6/2025
Status: Merged
Merged: 12/6/2025
Merged by: @dreamhunter2333

Base: mainHead: feature/email


📝 Commits (2)

  • 410400a feat: add AI email extraction with Cloudflare Workers AI
  • 06866f9 feat: upgrade dependencies

📊 Changes

27 files changed (+2475 additions, -1639 deletions)

View changed files

db/2025-12-06-metadata.sql (+4 -0)
📝 db/schema.sql (+1 -0)
📝 frontend/package.json (+8 -8)
📝 frontend/pnpm-lock.yaml (+823 -633)
frontend/src/components/AiExtractInfo.vue (+145 -0)
📝 frontend/src/components/MailBox.vue (+3 -0)
📝 frontend/src/components/MailContentRenderer.vue (+4 -0)
📝 frontend/src/views/Admin.vue (+6 -0)
frontend/src/views/admin/AiExtractSettings.vue (+125 -0)
📝 pages/package.json (+1 -1)
📝 vitepress-docs/docs/.vitepress/en.ts (+1 -0)
📝 vitepress-docs/docs/.vitepress/zh.ts (+1 -0)
vitepress-docs/docs/en/guide/feature/ai-extract.md (+70 -0)
📝 vitepress-docs/docs/en/guide/worker-vars.md (+57 -57)
vitepress-docs/docs/zh/guide/feature/ai-extract.md (+70 -0)
📝 vitepress-docs/package.json (+1 -1)
📝 vitepress-docs/pnpm-lock.yaml (+483 -473)
📝 worker/package.json (+6 -6)
📝 worker/pnpm-lock.yaml (+375 -458)
worker/src/admin_api/ai_extract_settings.ts (+27 -0)

...and 7 more files

📄 Description

User description

Summary

Add AI-powered email content extraction feature using Cloudflare Workers AI to automatically identify and extract important information from emails.

Features

  • AI Extraction: Automatically extract verification codes, authentication links, service links, subscription links from emails
  • Admin Allowlist: Optional address allowlist with wildcard support to control AI extraction scope
  • Frontend Display: Display extracted information in both email list (compact) and detail view (full mode)
  • Bilingual Documentation: Complete Chinese and English documentation
  • Database Migration: Add metadata field to raw_mails table (v0.0.3 → v0.0.4)

Changes

Backend

  • Add worker/src/email/ai_extract.ts - Core AI extraction logic with priority-based extraction
  • Add worker/src/admin_api/ai_extract_settings.ts - Admin API for allowlist configuration
  • Update worker/src/email/index.ts - Integrate AI extraction into email processing workflow
  • Add database migration db/2025-12-06-metadata.sql - Add metadata TEXT field
  • Update worker/src/constants.ts - Add DB_VERSION v0.0.4 and AI_EXTRACT_SETTINGS_KEY
  • Update worker/src/types.d.ts - Add AI binding and environment variables

Frontend

  • Add frontend/src/components/AiExtractInfo.vue - Reusable component for displaying AI extraction results
  • Add frontend/src/views/admin/AiExtractSettings.vue - Admin settings page for allowlist configuration
  • Update frontend/src/components/MailBox.vue - Show AI info in email list (compact mode)
  • Update frontend/src/components/MailContentRenderer.vue - Show AI info in email detail view
  • Update frontend/src/views/Admin.vue - Add AI Extract Settings tab

Documentation

  • Add vitepress-docs/docs/zh/guide/feature/ai-extract.md - Chinese documentation
  • Add vitepress-docs/docs/en/guide/feature/ai-extract.md - English documentation
  • Update VitePress navigation configs (zh.ts, en.ts)
  • Update worker/wrangler.toml.template - Add AI binding and environment variables

Configuration

Environment Variables

  • ENABLE_AI_EMAIL_EXTRACT: Enable/disable AI extraction (default: false)
  • AI_EXTRACT_MODEL: AI model to use (default: @cf/meta/llama-3.1-8b-instruct)

Worker Bindings

```toml
[ai]
binding = "AI"
```

Extraction Types (Priority Order)

  1. auth_code - Verification codes (OTP, security codes)
  2. auth_link - Authentication links (login, verify, activate, reset password)
  3. service_link - Service-related links (GitHub, GitLab, deployment notifications)
  4. subscription_link - Subscription management links (unsubscribe)
  5. other_link - Other valuable links
  6. none - No relevant content found

Technical Highlights

  • Proper regex escaping for wildcard pattern matching
  • Content truncation (4000 chars) to avoid AI token limits
  • Error handling with try-catch, won't affect email receiving
  • JSON schema validation for AI responses
  • Type-safe TypeScript implementation
  • Vue I18n support with proper @ symbol escaping

Test Plan

  • Database migration tested
  • AI extraction logic verified
  • Wildcard pattern matching tested (21 test cases passed)
  • Frontend components display correctly
  • Admin settings page functional
  • Build succeeds without errors
  • Vue I18n compilation errors resolved

Breaking Changes

None. This is a new feature with backward compatibility.

References

🤖 Generated with Claude Code

Co-Authored-By: Claude noreply@anthropic.com


PR Type

Enhancement, Documentation


Description

  • Introduced AI-powered email content extraction using Cloudflare Workers AI.

  • Added frontend components to display extracted email information.

  • Implemented admin settings for AI extraction configuration.

  • Updated database schema to include metadata for AI extraction results.


Changes walkthrough 📝

Relevant files
Enhancement
13 files
AiExtractInfo.vue
New component for displaying AI extraction results.           
+145/-0 
MailBox.vue
Integrated AI extraction info into email list view.           
+3/-0     
MailContentRenderer.vue
Integrated AI extraction info into email detail view.       
+4/-0     
Admin.vue
Added AI Extract Settings tab in admin view.                         
+6/-0     
AiExtractSettings.vue
New admin settings page for AI extraction configuration. 
+125/-0 
ai_extract_settings.ts
Backend API for AI extraction settings management.             
+27/-0   
db_api.ts
Database migration logic for metadata column.                       
+5/-1     
index.ts
Registered AI extraction settings API endpoints.                 
+5/-0     
ai_extract.ts
Core logic for AI-powered email content extraction.           
+235/-0 
index.ts
Integrated AI extraction into email processing workflow. 
+4/-0     
types.d.ts
Added types for AI extraction configuration and bindings.
+5/-0     
2025-12-06-metadata.sql
SQL script to add metadata column for AI extraction results.
+4/-0     
schema.sql
Updated schema to include metadata column.                             
+1/-0     
Documentation
6 files
en.ts
Added AI Email Recognition to English sidebar.                     
+1/-0     
zh.ts
Added AI 邮件识别 to Chinese sidebar.                                               
+1/-0     
CHANGELOG.md
Updated changelog for v1.1.0 with AI extraction feature. 
+1/-4     
ai-extract.md
English documentation for AI email recognition feature.   
+70/-0   
worker-vars.md
Documented AI extraction-related variables in English.     
+57/-57 
ai-extract.md
Chinese documentation for AI email recognition feature.   
+70/-0   
Configuration changes
2 files
constants.ts
Added constants for AI extraction settings.                           
+3/-2     
wrangler.toml.template
Added AI extraction configuration to template.                     
+8/-0     

Need help?
  • Type /help how to ... in the comments thread for any questions about PR-Agent usage.
  • Check out the documentation for more information.

  • 🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

    ## 📋 Pull Request Information **Original PR:** https://github.com/dreamhunter2333/cloudflare_temp_email/pull/776 **Author:** [@dreamhunter2333](https://github.com/dreamhunter2333) **Created:** 12/6/2025 **Status:** ✅ Merged **Merged:** 12/6/2025 **Merged by:** [@dreamhunter2333](https://github.com/dreamhunter2333) **Base:** `main` ← **Head:** `feature/email` --- ### 📝 Commits (2) - [`410400a`](https://github.com/dreamhunter2333/cloudflare_temp_email/commit/410400ac91d1a50554eb3ca0d905804797e33e42) feat: add AI email extraction with Cloudflare Workers AI - [`06866f9`](https://github.com/dreamhunter2333/cloudflare_temp_email/commit/06866f90e1f1ba5d56f6e1b1c644f0721e97cc0e) feat: upgrade dependencies ### 📊 Changes **27 files changed** (+2475 additions, -1639 deletions) <details> <summary>View changed files</summary> ➕ `db/2025-12-06-metadata.sql` (+4 -0) 📝 `db/schema.sql` (+1 -0) 📝 `frontend/package.json` (+8 -8) 📝 `frontend/pnpm-lock.yaml` (+823 -633) ➕ `frontend/src/components/AiExtractInfo.vue` (+145 -0) 📝 `frontend/src/components/MailBox.vue` (+3 -0) 📝 `frontend/src/components/MailContentRenderer.vue` (+4 -0) 📝 `frontend/src/views/Admin.vue` (+6 -0) ➕ `frontend/src/views/admin/AiExtractSettings.vue` (+125 -0) 📝 `pages/package.json` (+1 -1) 📝 `vitepress-docs/docs/.vitepress/en.ts` (+1 -0) 📝 `vitepress-docs/docs/.vitepress/zh.ts` (+1 -0) ➕ `vitepress-docs/docs/en/guide/feature/ai-extract.md` (+70 -0) 📝 `vitepress-docs/docs/en/guide/worker-vars.md` (+57 -57) ➕ `vitepress-docs/docs/zh/guide/feature/ai-extract.md` (+70 -0) 📝 `vitepress-docs/package.json` (+1 -1) 📝 `vitepress-docs/pnpm-lock.yaml` (+483 -473) 📝 `worker/package.json` (+6 -6) 📝 `worker/pnpm-lock.yaml` (+375 -458) ➕ `worker/src/admin_api/ai_extract_settings.ts` (+27 -0) _...and 7 more files_ </details> ### 📄 Description ### **User description** ## Summary Add AI-powered email content extraction feature using Cloudflare Workers AI to automatically identify and extract important information from emails. ## Features - **AI Extraction**: Automatically extract verification codes, authentication links, service links, subscription links from emails - **Admin Allowlist**: Optional address allowlist with wildcard support to control AI extraction scope - **Frontend Display**: Display extracted information in both email list (compact) and detail view (full mode) - **Bilingual Documentation**: Complete Chinese and English documentation - **Database Migration**: Add metadata field to raw_mails table (v0.0.3 → v0.0.4) ## Changes ### Backend - Add `worker/src/email/ai_extract.ts` - Core AI extraction logic with priority-based extraction - Add `worker/src/admin_api/ai_extract_settings.ts` - Admin API for allowlist configuration - Update `worker/src/email/index.ts` - Integrate AI extraction into email processing workflow - Add database migration `db/2025-12-06-metadata.sql` - Add metadata TEXT field - Update `worker/src/constants.ts` - Add DB_VERSION v0.0.4 and AI_EXTRACT_SETTINGS_KEY - Update `worker/src/types.d.ts` - Add AI binding and environment variables ### Frontend - Add `frontend/src/components/AiExtractInfo.vue` - Reusable component for displaying AI extraction results - Add `frontend/src/views/admin/AiExtractSettings.vue` - Admin settings page for allowlist configuration - Update `frontend/src/components/MailBox.vue` - Show AI info in email list (compact mode) - Update `frontend/src/components/MailContentRenderer.vue` - Show AI info in email detail view - Update `frontend/src/views/Admin.vue` - Add AI Extract Settings tab ### Documentation - Add `vitepress-docs/docs/zh/guide/feature/ai-extract.md` - Chinese documentation - Add `vitepress-docs/docs/en/guide/feature/ai-extract.md` - English documentation - Update VitePress navigation configs (zh.ts, en.ts) - Update `worker/wrangler.toml.template` - Add AI binding and environment variables ## Configuration ### Environment Variables - `ENABLE_AI_EMAIL_EXTRACT`: Enable/disable AI extraction (default: false) - `AI_EXTRACT_MODEL`: AI model to use (default: @cf/meta/llama-3.1-8b-instruct) ### Worker Bindings \`\`\`toml [ai] binding = "AI" \`\`\` ## Extraction Types (Priority Order) 1. `auth_code` - Verification codes (OTP, security codes) 2. `auth_link` - Authentication links (login, verify, activate, reset password) 3. `service_link` - Service-related links (GitHub, GitLab, deployment notifications) 4. `subscription_link` - Subscription management links (unsubscribe) 5. `other_link` - Other valuable links 6. `none` - No relevant content found ## Technical Highlights - ✅ Proper regex escaping for wildcard pattern matching - ✅ Content truncation (4000 chars) to avoid AI token limits - ✅ Error handling with try-catch, won't affect email receiving - ✅ JSON schema validation for AI responses - ✅ Type-safe TypeScript implementation - ✅ Vue I18n support with proper @ symbol escaping ## Test Plan - [x] Database migration tested - [x] AI extraction logic verified - [x] Wildcard pattern matching tested (21 test cases passed) - [x] Frontend components display correctly - [x] Admin settings page functional - [x] Build succeeds without errors - [x] Vue I18n compilation errors resolved ## Breaking Changes None. This is a new feature with backward compatibility. ## References - Inspired by [Alle Project](https://github.com/bestruirui/Alle/blob/62e74629ded0c7966c12d4e1c54f0bcc2e54f12c/src/lib/email/extract.ts#L54) - Uses [Cloudflare Workers AI JSON Mode](https://developers.cloudflare.com/workers-ai/features/json-mode/) 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com> ___ ### **PR Type** Enhancement, Documentation ___ ### **Description** - Introduced AI-powered email content extraction using Cloudflare Workers AI. - Added frontend components to display extracted email information. - Implemented admin settings for AI extraction configuration. - Updated database schema to include metadata for AI extraction results. ___ ### **Changes walkthrough** 📝 <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Enhancement</strong></td><td><details><summary>13 files</summary><table> <tr> <td><strong>AiExtractInfo.vue</strong><dd><code>New component for displaying AI extraction results.</code>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </dd></td> <td><a href="https://github.com/dreamhunter2333/cloudflare_temp_email/pull/776/files#diff-8645f8c6fffbf82f110d38ca462cc3875c0addb80816110704d70c9fd3400523">+145/-0</a>&nbsp; </td> </tr> <tr> <td><strong>MailBox.vue</strong><dd><code>Integrated AI extraction info into email list view.</code>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </dd></td> <td><a href="https://github.com/dreamhunter2333/cloudflare_temp_email/pull/776/files#diff-ce7b47744c9011a27a8297d8e5095ccb9609a6849a9afe1a37e04ae47b2636f2">+3/-0</a>&nbsp; &nbsp; &nbsp; </td> </tr> <tr> <td><strong>MailContentRenderer.vue</strong><dd><code>Integrated AI extraction info into email detail view.</code>&nbsp; &nbsp; &nbsp; &nbsp; </dd></td> <td><a href="https://github.com/dreamhunter2333/cloudflare_temp_email/pull/776/files#diff-cc4cb9ecb3f030c45984756a7f65b718388b8a69b9729ce8ef4edf60228d303b">+4/-0</a>&nbsp; &nbsp; &nbsp; </td> </tr> <tr> <td><strong>Admin.vue</strong><dd><code>Added AI Extract Settings tab in admin view.</code>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </dd></td> <td><a href="https://github.com/dreamhunter2333/cloudflare_temp_email/pull/776/files#diff-78137b072a7fa52c6d503efb9a3d32c07da5073dd5ca32ac48b1402ac2481a55">+6/-0</a>&nbsp; &nbsp; &nbsp; </td> </tr> <tr> <td><strong>AiExtractSettings.vue</strong><dd><code>New admin settings page for AI extraction configuration.</code>&nbsp; </dd></td> <td><a href="https://github.com/dreamhunter2333/cloudflare_temp_email/pull/776/files#diff-6cdebac2928d5454038414c7334576561615c01955af1025f6124aa4ca9e0d7e">+125/-0</a>&nbsp; </td> </tr> <tr> <td><strong>ai_extract_settings.ts</strong><dd><code>Backend API for AI extraction settings management.</code>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </dd></td> <td><a href="https://github.com/dreamhunter2333/cloudflare_temp_email/pull/776/files#diff-b2c278e06f828088a1a44837ec15c2b76fff6220ee80bd7a50cbe41f4609c96f">+27/-0</a>&nbsp; &nbsp; </td> </tr> <tr> <td><strong>db_api.ts</strong><dd><code>Database migration logic for metadata column.</code>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </dd></td> <td><a href="https://github.com/dreamhunter2333/cloudflare_temp_email/pull/776/files#diff-b2b74d448d9a04d5b6118262d99440206d6b342cb4955730aa50ed9f35923e4c">+5/-1</a>&nbsp; &nbsp; &nbsp; </td> </tr> <tr> <td><strong>index.ts</strong><dd><code>Registered AI extraction settings API endpoints.</code>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </dd></td> <td><a href="https://github.com/dreamhunter2333/cloudflare_temp_email/pull/776/files#diff-b470c4c47ce4a700cd8aac644d07d8a747d439bb6d69e9392a198b3a931fe2e7">+5/-0</a>&nbsp; &nbsp; &nbsp; </td> </tr> <tr> <td><strong>ai_extract.ts</strong><dd><code>Core logic for AI-powered email content extraction.</code>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </dd></td> <td><a href="https://github.com/dreamhunter2333/cloudflare_temp_email/pull/776/files#diff-ee497ce196c1588a7c70e4d40adcf1573c93c2846992206fd0e7a0854fc554b6">+235/-0</a>&nbsp; </td> </tr> <tr> <td><strong>index.ts</strong><dd><code>Integrated AI extraction into email processing workflow.</code>&nbsp; </dd></td> <td><a href="https://github.com/dreamhunter2333/cloudflare_temp_email/pull/776/files#diff-da1768152a73f37b0a0780d578569f84c3d4bb946294e3a81fb0271302e6d816">+4/-0</a>&nbsp; &nbsp; &nbsp; </td> </tr> <tr> <td><strong>types.d.ts</strong><dd><code>Added types for AI extraction configuration and bindings.</code></dd></td> <td><a href="https://github.com/dreamhunter2333/cloudflare_temp_email/pull/776/files#diff-583fb024d5c9d1efac71bbea788d8379e5e8fc2f0bb1696a9863c6f6cac54bee">+5/-0</a>&nbsp; &nbsp; &nbsp; </td> </tr> <tr> <td><strong>2025-12-06-metadata.sql</strong><dd><code>SQL script to add metadata column for AI extraction results.</code></dd></td> <td><a href="https://github.com/dreamhunter2333/cloudflare_temp_email/pull/776/files#diff-cd86cdae2580f6f2b5d804cc2d32822de89bfdaabc26ad6c946c4ac34fba71fa">+4/-0</a>&nbsp; &nbsp; &nbsp; </td> </tr> <tr> <td><strong>schema.sql</strong><dd><code>Updated schema to include metadata column.</code>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </dd></td> <td><a href="https://github.com/dreamhunter2333/cloudflare_temp_email/pull/776/files#diff-948c089a4de6325dd9a8f187fb0116272dedf46306023dce6d70b548e9f7539c">+1/-0</a>&nbsp; &nbsp; &nbsp; </td> </tr> </table></details></td></tr><tr><td><strong>Documentation</strong></td><td><details><summary>6 files</summary><table> <tr> <td><strong>en.ts</strong><dd><code>Added AI Email Recognition to English sidebar.</code>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </dd></td> <td><a href="https://github.com/dreamhunter2333/cloudflare_temp_email/pull/776/files#diff-082984a4aeb5f3a99836db12f8e2398f599cdb3e47bd3a70db919e96000940c0">+1/-0</a>&nbsp; &nbsp; &nbsp; </td> </tr> <tr> <td><strong>zh.ts</strong><dd><code>Added AI 邮件识别 to Chinese sidebar.</code>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </dd></td> <td><a href="https://github.com/dreamhunter2333/cloudflare_temp_email/pull/776/files#diff-9d8e658367b9c916dfc920a8c02a2b3c62478f36302f223b97707919e42308a0">+1/-0</a>&nbsp; &nbsp; &nbsp; </td> </tr> <tr> <td><strong>CHANGELOG.md</strong><dd><code>Updated changelog for v1.1.0 with AI extraction feature.</code>&nbsp; </dd></td> <td><a href="https://github.com/dreamhunter2333/cloudflare_temp_email/pull/776/files#diff-06572a96a58dc510037d5efa622f9bec8519bc1beab13c9f251e97e657a9d4ed">+1/-4</a>&nbsp; &nbsp; &nbsp; </td> </tr> <tr> <td><strong>ai-extract.md</strong><dd><code>English documentation for AI email recognition feature.</code>&nbsp; &nbsp; </dd></td> <td><a href="https://github.com/dreamhunter2333/cloudflare_temp_email/pull/776/files#diff-dd75232e84d3118651ac1f3d5abd5c9523f321009f78a62396082cda4bdd08b5">+70/-0</a>&nbsp; &nbsp; </td> </tr> <tr> <td><strong>worker-vars.md</strong><dd><code>Documented AI extraction-related variables in English.</code>&nbsp; &nbsp; &nbsp; </dd></td> <td><a href="https://github.com/dreamhunter2333/cloudflare_temp_email/pull/776/files#diff-fb5fa2149e9d484384eaac2520f95441eacbacf83f8451049459695ef22d0b8b">+57/-57</a>&nbsp; </td> </tr> <tr> <td><strong>ai-extract.md</strong><dd><code>Chinese documentation for AI email recognition feature.</code>&nbsp; &nbsp; </dd></td> <td><a href="https://github.com/dreamhunter2333/cloudflare_temp_email/pull/776/files#diff-f1e8a1a8cb8dab0fd0200e7e62b45368ec7b49a764a99a1f704a669c1b03aa8f">+70/-0</a>&nbsp; &nbsp; </td> </tr> </table></details></td></tr><tr><td><strong>Configuration changes</strong></td><td><details><summary>2 files</summary><table> <tr> <td><strong>constants.ts</strong><dd><code>Added constants for AI extraction settings.</code>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </dd></td> <td><a href="https://github.com/dreamhunter2333/cloudflare_temp_email/pull/776/files#diff-cab08ba19c1499ed426fc4918a5613e22eb95c3427c7467ce330f5ee0d69d01e">+3/-2</a>&nbsp; &nbsp; &nbsp; </td> </tr> <tr> <td><strong>wrangler.toml.template</strong><dd><code>Added AI extraction configuration to template.</code>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </dd></td> <td><a href="https://github.com/dreamhunter2333/cloudflare_temp_email/pull/776/files#diff-743273da72481b71fbeb1dddfd294be9249554eef65691dfc9bcfa9f0fd971fb">+8/-0</a>&nbsp; &nbsp; &nbsp; </td> </tr> </table></details></td></tr></tr></tbody></table> ___ > <details> <summary> Need help?</summary><li>Type <code>/help how to ...</code> in the comments thread for any questions about PR-Agent usage.</li><li>Check out the <a href="https://qodo-merge-docs.qodo.ai/usage-guide/">documentation</a> for more information.</li></details> --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
    kerem 2026-02-26 21:32:49 +03:00
    Sign in to join this conversation.
    No milestone
    No project
    No assignees
    1 participant
    Notifications
    Due date
    The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

    No due date set.

    Dependencies

    No dependencies set.

    Reference
    starred/cloudflare_temp_email#756
    No description provided.