gmail-to-drive-by-label - #1
Merged
Merged
Conversation
don-petry
added a commit
that referenced
this pull request
Jul 29, 2026
don-petry
added a commit
that referenced
this pull request
Jul 29, 2026
don-petry
added a commit
that referenced
this pull request
Jul 30, 2026
don-petry
added a commit
that referenced
this pull request
Jul 30, 2026
* docs: add AI-Powered Gemini Semantic Classifier feature proposal * docs: update proposal with 7-Domain Standard Taxonomy Matrix & MECE Validation * docs: add Inbox Preservation rule (processing to Drive does NOT remove from INBOX) * docs: use Single Global Processed Label marker to eliminate sidebar label duplication * docs: detail Idempotency & Single-Click Reprocessing workflows * feat: add native Gemini AI classifier and auto-filter engine module * chore: dev-lead update (review-changes) [skip ci-relay] * chore: dev-lead update (review-changes) [skip ci-relay] * chore: dev-lead update (review-changes) [skip ci-relay] * fix(ci): auto-fix for SonarCloud Code Analysis [skip ci-relay] * fix(ci): auto-fix for SonarCloud Code Analysis [skip ci-relay] * fix(ci): auto-fix for SonarCloud Code Analysis [skip ci-relay] * chore: dev-lead update (review-changes) [skip ci-relay] * fix(ci): auto-fix for SonarCloud Code Analysis [skip ci-relay] * fix(reviews): address review comments [skip ci-relay] * fix(ci): auto-fix for SonarCloud Code Analysis [skip ci-relay] * fix(ci): auto-fix for SonarCloud Code Analysis [skip ci-relay] * fix(ci): auto-fix for SonarCloud Code Analysis [skip ci-relay] * fix(ci): auto-fix for SonarCloud Code Analysis [skip ci-relay] * docs: detail Unclassified & Edge-Case email handling safety nets * feat: add native Google Apps Script GitHub Sync module (UrlFetchApp -> GitHub REST API) * chore(ci): apply prettier/eslint auto-fixes * fix(bot): address bot feedback [skip ci-relay] * fix(bot): address bot feedback [skip ci-relay] * test: add performance and scalability benchmark test suite for long documents and SHA retries * feat: enhance gitHubSync with targeted insertion and 409 SHA collision retries * chore: dev-lead update (review-changes) [skip ci-relay] * feat: add Option A multi-account user email resolution and deployment guide * chore(ci): apply prettier/eslint auto-fixes * feat: add modelEndpoint to classifier config The classifyEmailWithGemini function requires config.modelEndpoint to be defined, but it was missing from the returned config object in getClassifierConfig(). Added the Gemini 1.5 Flash model endpoint to resolve the configuration dependency. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com> * feat: add appsscript.json manifest for clasp deployment * chore: add .claspignore to exclude Node.js Jest test files from Apps Script runtime * fix: export getAiClassifierConfig and standalone GAS logic * fix: safe Gemini API HTTP status checking and response guards * fix: update Gemini API endpoint to gemini-2.0-flash with automatic fallbacks * feat: add listAvailableGeminiModels helper and expanded model endpoints * feat: set gemini-3.1-flash-lite as 2nd fallback endpoint * feat: add 404 auto-create note functionality with Progressive Disclosure front-matter * feat: reorder endpoints to highest-level model first and add HTTP 429 failover * feat: set Gemini 3.5 Flash Lite as primary endpoint #1 * feat: set Gemini 3.5 Flash Lite as #1 and Gemini 3.1 Flash Lite as #2 * chore: remove deprecated 1.x and 2.x Gemini models, use 3.x models only * chore: dev-lead update (review-changes) [skip ci-relay] * feat: add Family/DJ-Rachel sub-label and strict prompt classification rules * feat: exclude health newsletters and news bulletins from 04_Family_Health * feat: add setupFiveMinuteTrigger and stopAllTriggers for automated background classification * feat: map student college/career planning meetings to Family/School * feat: map MyBroodMinder alerts to 07_Community_NonProfit with sub-label Projects/Beekeeping * feat: map ParentSquare and MCAA school emails to Family/School-Toby * fix: add 2-second rate limit backoff delay on HTTP 429 and stabilize model endpoints * feat: parse and honor Retry-After header and retryDelay on HTTP 429 * chore: strictly enforce Gemini 3.x models ONLY * feat: add Gemma 4 31B (gemma-4-31b-it) as primary endpoint #1 * fix: add extractJsonSubstring helper to parse Gemma 4 31B markdown formatting * feat: exclude tech webinars and commercial store marketing from core domain tags * feat: add automated action execution (trash, archive, mark_read) and Gmail category routing --------- Co-authored-by: donpetry-bot <281750570+donpetry-bot@users.noreply.github.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: Claude Haiku 4.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Gmail to Drive Archiver
A robust Google Apps Script designed to automate the archiving of Gmail threads. It appends email body text to a Google Doc and intelligently saves attachments to a specific Google Drive folder based on Gmail labels.
Added scripts and readme's