Skip to content

gmail-to-drive-by-label - #1

Merged
don-petry merged 5 commits into
mainfrom
don-petry-patch-1
Feb 1, 2026
Merged

gmail-to-drive-by-label#1
don-petry merged 5 commits into
mainfrom
don-petry-patch-1

Conversation

@don-petry

Copy link
Copy Markdown
Collaborator

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

@don-petry
don-petry merged commit faadbad into main Feb 1, 2026
@don-petry
don-petry deleted the don-petry-patch-1 branch February 4, 2026 01:07
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>
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