Inbox Agent Message Lifecycle and Policy Specification
1. Purpose
This document defines how the Inbox Agent should evaluate, classify, prioritize, retain, and surface email across the user's mail estate.
The core principle is:
Email should be organized around attention and action, not around folder location.
Physical folders should remain minimal. Most organization should be expressed through metadata, classifications, agent state, and virtual views.
2. Message Lifecycle
Every incoming message should move through a consistent lifecycle.
NEW MESSAGE
|
v
INGEST
|
v
IDENTIFY MAILBOX / IDENTITY
|
v
APPLY DETERMINISTIC RULES
|
v
AI CLASSIFICATION IF NEEDED
|
v
DETERMINE ATTENTION STATE
|
v
DETERMINE PRIORITY
|
v
DETERMINE RETENTION
|
v
APPLY ACTION
|
v
SURFACE OR ARCHIVE
The agent must distinguish between:
- What the message is
- Whether the user needs to see it
- Whether the user needs to do something
- Whether the user owes a response
- Whether the user is waiting on someone else
- Whether the message should be retained
- Whether the message arrived at the appropriate identity
These are separate dimensions.
3. Inbox Philosophy
The Inbox represents messages that are not yet sufficiently processed.
Inbox should not become permanent storage.
A message should remain in the Inbox when:
- The user has not yet reviewed it and it may matter.
- The agent is uncertain about classification.
- The message requires user attention.
- The message requires a response.
- The message requires an action.
- The message has unusually high importance.
- The message is awaiting user approval before an automated action.
A message should leave the Inbox when:
- It has been classified as low-value and archived.
- It has been processed and moved into an action-oriented virtual state.
- It is informational with no required action.
- It is a receipt or routine transactional record that can be retained without remaining visible.
- It is an automated system success notification.
- It is promotional or low-value correspondence.
- It has been reviewed and no longer requires attention.
Reading a message alone should not automatically mean it is resolved.
4. Attention States
Each message or conversation may have one primary attention state.
Initial states:
UNPROCESSED
ACTION
RESPOND
WAITING
READ_LATER
REFERENCE
SYSTEM_ALERT
ARCHIVE
DISCARD_CANDIDATE
4.1 UNPROCESSED
The message has not yet been confidently classified.
Typical reasons:
- Recently arrived
- AI confidence below threshold
- Conflicting rules
- Requires user review
4.2 ACTION
The user needs to perform a non-email action.
Examples:
- Pay an invoice
- Sign a document
- Schedule an appointment
- Review a proposal
- Complete a registration
- Renew a service
- Investigate a failed system process
Action items should support:
Due date
Priority
Action summary
Related person
Related project
Completion state
4.3 RESPOND
The user owes someone an email response.
The agent should differentiate this from ACTION.
Example:
Message:
"Can you send me the revised proposal?"
Attention:
RESPOND
Suggested action:
Draft reply
4.4 WAITING
The user has already taken action or sent a response and is waiting for another party.
The agent should create WAITING states automatically where confidence is high.
Example:
Jason:
"I've attached the signed form. Please let me know when the account has been updated."
State:
WAITING
Waiting on:
Recipient
Expected response:
Confirmation of account update
When the recipient replies, the conversation should automatically leave WAITING and be re-evaluated.
4.5 READ_LATER
The message is worth consuming but does not require immediate action.
Examples:
- Useful newsletter
- Technical article
- Industry update
- Long informational email
- Research material
READ_LATER should be a virtual queue, not necessarily a physical folder.
4.6 REFERENCE
The message contains useful information that should be retained but does not need to be surfaced regularly.
Examples:
- Policy documents
- Account confirmations
- Warranty information
- Contract correspondence
- Useful instructions
4.7 SYSTEM_ALERT
The message is automated but requires attention.
Examples:
- Failed build
- Production incident
- Security alert
- Failed backup
- Payment failure
- Expired certificate
- Account lockout
Routine successful system events should not become SYSTEM_ALERT.
4.8 ARCHIVE
The message should be retained but does not require user attention.
Examples:
- Successful deployment notices
- Shipping confirmations after delivery
- Receipts
- Routine confirmations
- Completed conversations
- Informational notices
4.9 DISCARD_CANDIDATE
The message appears to have little or no long-term value.
Examples:
- Marketing
- Expired promotions
- Low-value automated notices
- Repetitive social notifications
- Spam-like correspondence that passed provider filtering
Initially, DISCARD_CANDIDATE means:
Classify
Hide from primary views
Retain temporarily
Do not permanently delete automatically
Permanent deletion remains governed by a separate approval and retention policy.
5. Message Classification
Attention state answers:
What should Jason do about this?
Classification answers:
What kind of message is this?
These should remain independent.
Initial semantic classifications:
PERSONAL
FAMILY
PROFESSIONAL
PROJECT
DEVELOPMENT
SYSTEM
SECURITY
FINANCIAL
RECEIPT
PURCHASE
TRAVEL
ADMINISTRATIVE
NEWSLETTER
MARKETING
SOCIAL
LEGAL
OTHER
UNKNOWN
A message may have one primary classification and multiple secondary tags.
Example:
Primary Classification:
FINANCIAL
Secondary:
RECEIPT
PURCHASE
Attention:
ARCHIVE
6. Priority Model
Priority should represent how quickly the user needs to become aware of the message.
Proposed values:
CRITICAL
HIGH
NORMAL
LOW
BACKGROUND
6.1 CRITICAL
Immediate attention may be required.
Examples:
- Security compromise
- Failed important payment
- Production outage
- Fraud warning
- Time-sensitive emergency involving a person
- Critical account access issue
CRITICAL should be rare.
6.2 HIGH
Important and likely needs attention soon.
Examples:
- Important professional request
- Deadline approaching
- Action required within several days
- Failed development process requiring investigation
- Important financial correspondence
6.3 NORMAL
Standard correspondence worth reviewing.
Examples:
- Personal email
- Professional discussion
- Non-urgent requests
- Useful information
6.4 LOW
Useful but not time-sensitive.
Examples:
- Receipts
- Informational system notifications
- Routine confirmations
- Optional newsletters
6.5 BACKGROUND
Should ordinarily not interrupt or clutter.
Examples:
- Successful CI/CD notifications
- Marketing
- Mailing lists
- Low-value automated status mail
7. Attention Is Not the Same as Priority
These dimensions must remain separate.
Example:
Message:
Annual tax document available
Classification:
FINANCIAL
Attention:
ACTION
Priority:
NORMAL
Another example:
Message:
Production authentication failure
Classification:
SYSTEM / SECURITY
Attention:
SYSTEM_ALERT
Priority:
CRITICAL
8. Human Correspondence Policy
Messages written by actual people should receive higher default attention than automated mail.
Signals indicating human correspondence may include:
- Sender is a known contact.
- Message contains conversational language.
- Sender is replying to an existing thread.
- Message is not from a no-reply address.
- Message was sent directly to the user rather than a mailing list.
- Message contains an explicit question or request.
Human messages should not be automatically archived unless a strong rule exists.
9. Response Detection
The agent should identify messages that likely require a response.
Signals may include:
Direct question
Request for information
Request for confirmation
Request for approval
Scheduling request
Explicit "please respond"
Conversation awaiting acknowledgement
The agent should create:
attention_state = RESPOND
and optionally generate a draft reply.
Draft generation does not imply authorization to send.
10. Waiting Detection
The agent should inspect sent mail and conversation history.
A conversation should become WAITING when the user:
- Asks a question.
- Requests an action from someone.
- Sends requested information and expects confirmation.
- Submits a document and expects acknowledgement.
- Makes a support request.
- Requests approval.
- Requests scheduling or availability.
Example:
Sent:
"Can you confirm whether the refund was issued?"
Result:
WAITING
Waiting on:
Recipient
Subject:
Refund confirmation
11. Waiting Follow-Up
The agent should be capable of identifying stale WAITING conversations.
Future behavior may include:
Waiting 3 days
Waiting 7 days
Waiting past expected date
Waiting past explicit deadline
The system may suggest:
You asked for a response seven days ago and have not received one.
The agent may draft a follow-up but should not autonomously send it during initial phases.
12. Completion Detection
An ACTION or RESPOND item should remain active until:
- The user explicitly completes it.
- Conversation state clearly indicates resolution.
- The user replies and the state changes to WAITING.
- A deterministic rule recognizes completion.
- The user dismisses the item.
Reading the message does not equal completion.
13. Receipt and Purchase Policy
Routine receipts and purchase confirmations should generally not remain in Inbox.
Default workflow:
Receipt received
|
v
Classify
|
v
Extract metadata
|
v
Check for unusual condition
|
+---- Normal ----> Archive
|
+---- Problem ---> Action / Alert
Useful metadata may include:
Merchant
Transaction date
Amount
Order number
Product/service
Payment method indicator
Return deadline
Subscription indicator
Examples requiring attention:
- Payment failed
- Duplicate charge suspected
- Cancellation problem
- Return deadline approaching
- Unexpected subscription renewal
- Order requiring action
14. Travel Policy
Travel-related correspondence should be retained and made discoverable without forcing everything into folders.
Potential metadata:
Trip
Destination
Confirmation number
Travel date
Return date
Carrier
Hotel
Rental car
Traveler
Routine travel confirmations:
Classification:
TRAVEL
Attention:
REFERENCE
Priority:
NORMAL
Travel disruptions should become:
Classification:
TRAVEL
Attention:
ACTION
Priority:
HIGH
15. Financial Policy
Financial correspondence should be handled conservatively.
Potential categories:
Statement
Bill
Receipt
Tax
Bank alert
Insurance
Investment
Payment confirmation
Payment failure
Fraud/security
Examples:
Routine statement:
Classification:
FINANCIAL
Attention:
REFERENCE
Priority:
LOW
Payment failure:
Classification:
FINANCIAL
Attention:
ACTION
Priority:
HIGH
Fraud alert:
Classification:
FINANCIAL / SECURITY
Attention:
ACTION
Priority:
CRITICAL
16. System / Service Mail Policy
The system/service mailbox:
platypus.software.dev@gmail.com
should be treated differently from human-facing mailboxes.
The normal goal is:
Process large volumes of automated mail while surfacing only exceptions.
Examples:
Build succeeded
→ BACKGROUND / ARCHIVE
Deployment succeeded
→ BACKGROUND / ARCHIVE
Build failed
→ SYSTEM_ALERT / HIGH
Deployment failed
→ SYSTEM_ALERT / HIGH
Security alert
→ SYSTEM_ALERT / CRITICAL or HIGH
Dependency vulnerability
→ SYSTEM_ALERT
Repository invitation
→ ACTION
Billing failure
→ ACTION / HIGH
The unread count of the system mailbox should not be treated as a meaningful measure of user workload.
17. Marketing and Commercial Policy
The preferred destination for commercial and low-value correspondence is:
Jason.s.koch@gmail.com
Examples:
- Retail accounts
- Shopping
- Promotions
- Mailing lists
- Coupons
- Product announcements
- Low-value registrations
Messages of this type received at higher-value identities should generate an Identity Hygiene recommendation when appropriate.
Example:
Received at:
jskoch@msn.com
Sender:
Retailer
Classification:
MARKETING
Preferred Identity:
Jason.s.koch@gmail.com
Recommendation:
Update account email
18. Identity Hygiene
The agent should identify correspondence arriving at an inappropriate identity.
Identity policy:
PERSONAL
jskoch@msn.com
PROFESSIONAL
jason@jasonkoch.io
PROJECTS / AI
jason@jasonkoch.ai
(alias of jason@jasonkoch.io mailbox)
SYSTEM / SERVICE
platypus.software.dev@gmail.com
COMMERCIAL / LOW VALUE
Jason.s.koch@gmail.com
APPLE INFRASTRUCTURE
jskoch67@icloud.com
Identity Hygiene should generate recommendations, not automatically change external accounts.
19. Newsletter Policy
Newsletters should not normally clutter the Inbox.
The agent should distinguish between:
VALUABLE NEWSLETTER
→ READ_LATER
LOW-VALUE NEWSLETTER
→ ARCHIVE
PROMOTIONAL NEWSLETTER
→ DISCARD_CANDIDATE
Repeated user behavior should influence future classification.
Example:
If the user repeatedly archives a newsletter without opening it, the agent may recommend:
Automatically archive this newsletter.
If the user repeatedly ignores it, the agent may recommend:
Unsubscribe or redirect this subscription to the commercial mailbox.
20. Retention Model
Retention is independent of attention.
Proposed retention states:
PERMANENT
LONG_TERM
STANDARD
TEMPORARY
DISCARD_CANDIDATE
PERMANENT
Examples:
- Important legal records
- Tax documents
- Significant financial records
- Important family correspondence
- Contracts
LONG_TERM
Examples:
- Professional history
- Important account correspondence
- Travel records
- Purchases with warranties
- Significant project communications
STANDARD
Default archived correspondence.
TEMPORARY
Examples:
- Shipping notifications
- One-time codes
- routine system statuses
DISCARD_CANDIDATE
Low-value content eligible for future cleanup.
21. Deletion Policy
Initial system behavior:
NO autonomous permanent deletion.
The agent may:
- Identify deletion candidates.
- Group deletion candidates.
- Recommend retention periods.
- Move messages out of primary views.
- Place items into a recoverable cleanup state where technically supported.
Permanent bulk deletion requires explicit approval.
22. Spam Policy
Provider-native spam and junk filtering should remain the first line of defense.
The Inbox Agent should not attempt to replace Microsoft or Gmail spam filtering.
The agent may supplement provider filtering by identifying:
- Persistent unwanted senders
- Commercial mail sent to the wrong identity
- Low-value subscriptions
- Repetitive automated mail
- Potential rule candidates
23. Deterministic Rules Before AI
Processing precedence:
1. Security constraints
2. Explicit user rules
3. Known sender/domain rules
4. Known system event rules
5. Existing learned approved rules
6. AI classification
7. User review when confidence is insufficient
The AI must not override an explicit user rule unless the system detects a safety issue or the rule is invalid.
24. AI Confidence
AI-derived classifications should retain confidence.
Suggested model:
HIGH
MEDIUM
LOW
Example behavior:
High confidence
Allow approved low-risk automatic behavior.
Medium confidence
Classify but avoid destructive or highly visible actions.
Low confidence
Leave visible and place in review queue.
25. Virtual Views
The application should expose logical views that span multiple mailboxes.
Initial views:
Needs Me
Respond
Waiting
System Alerts
Read Later
Financial
Travel
Professional
Projects
Family
Receipts
Recently Archived
Review Queue
These views should not require corresponding physical folders.
26. Cross-Mailbox Views
Views should aggregate messages from multiple physical mailboxes.
Example:
NEEDS ME
jskoch@msn.com
3
jason@jasonkoch.io
2
platypus.software.dev@gmail.com
1 system alert
Total:
6
The user should not need to manually visit each mailbox to understand their workload.
27. Daily Summary
A future Daily Summary should summarize attention, not unread counts.
Example:
Morning Inbox Brief
Needs action: 4
Responses owed: 3
Waiting: 6
System alerts: 1
Read later: 5
Automatically processed overnight: 73
Commercial messages redirected/archived: 21
System success notifications archived: 38
Receipts archived: 9
Other informational mail archived: 5
The goal is:
Tell the user what matters, not how much mail exists.
28. User Corrections
Every user correction should become learning data.
Example:
Agent:
READ_LATER
User:
No, this sender is always important.
Result:
Record correction.
Potential suggestion:
Create sender rule.
The system should distinguish between:
One-time correction
Pattern
Approved rule
A single correction should not necessarily become a permanent rule.
29. Rule Suggestions
The agent may propose rules when repeated behavior is detected.
Example:
Observed:
23 messages from sender X
22 manually archived
0 responded to
1 opened
Suggested rule:
Automatically archive messages from sender X.
[Approve]
[Modify]
[Reject]
Approved rules become deterministic and execute before AI.
30. Safety and Approval Boundaries
Initially permitted without per-message approval:
Read
Classify
Tag
Categorize
Mark read/unread
Archive known low-risk messages
Move according to explicit approved rules
Create virtual state
Generate summaries
Generate draft replies
Recommend rules
Require approval:
Send email
Permanent deletion
Mass deletion
Create forwarding rules
Modify mailbox configuration
Modify account security
Change external service email address
Unsubscribe where action could affect an external account
These boundaries may be relaxed later on a rule-by-rule basis.
31. Audit Requirements
Every automated operation should record:
Timestamp
Mailbox
Message identifier
Previous state
New state
Action
Rule or model responsible
Classification
Confidence
Reason summary
Reversibility information
The system must be able to answer:
Why did the agent do this?
32. Design Principle
The central design principle is:
MAILBOX ≠ WORKLOAD
UNREAD ≠ IMPORTANT
FOLDER ≠ MEANING
READ ≠ COMPLETE
The Inbox Agent exists to transform a collection of mailboxes into a unified representation of:
What needs attention
What needs action
What needs a response
What the user is waiting on
What should be retained
What can safely disappear into the background
