# AGENTS.md This document provides context for AI agents operating on the `mail_forwarding` infrastructure in this repository. ## Architecture This directory contains Google Apps Script code configured as Infrastructure as Code (IaC). It automates the creation of email forwarding in Google Workspace by reading from a Google Sheet and dynamically creating/managing Workspace Groups. ## Tooling - We use `@google/clasp` to manage the deployment of the `.js` files to Google Apps Script. Note: do NOT write TypeScript as we bypass the local transpilation step. - The entrypoint is `src/Code.js`. - The manifest is `src/appsscript.json`. ## Rules & Safeguards (CRITICAL) 1. **Never alter the `GROUP_DESCRIPTION_TAG` logic.** The script achieves declarative state management by finding and deleting Workspace Groups that are NOT present in the Google Sheet. To prevent the catastrophic deletion of real, human-managed groups (e.g., `board@haumdaucher.de`), the script relies on the `[Auto-Forwarder] Managed by Google Sheets` string in the group's description. The script must ALWAYS filter for this exact string before issuing any deletion API calls. 2. **Always deploy via `clasp`.** Do not instruct the user to copy-paste code manually if `clasp` is available. 3. **Trigger:** We use a combination of `onFormSubmit` (for Google Forms) and `onChange` (for manual sheet edits) triggers. This ensures reconciliation happens regardless of how the data was updated.