Skip to content

feat: implement AgentMail end-to-end features and annotations - #17

Merged
WeekendSuperhero merged 3 commits into
mainfrom
weekendsuperhero/simple-polish
Aug 23, 2026
Merged

feat: implement AgentMail end-to-end features and annotations#17
WeekendSuperhero merged 3 commits into
mainfrom
weekendsuperhero/simple-polish

Conversation

@WeekendSuperhero

@WeekendSuperhero WeekendSuperhero commented Aug 23, 2026

Copy link
Copy Markdown
Contributor

Linear

Part of AMXSF-333 — agentmail-mcp: implement resources/list (account roots) and emit ResourceLink blocks from read tools
Closes AMXSF-289 — MCP Resources: Annotations
Part of AMXSF-329 — Bridge: proxy-semantics conformance gaps (cross-backend resources/updated leak, non-deterministic resource_owner, aggregated pagination)

Summary

  • Implemented AgentMail draft management, guarded mailbox operations, and RFC threading.
  • Routed active session workspace through trusted metadata in Bridge.
  • Added audience/priority annotations to AgentMail resources and propagated them to the Inspector UI.
  • Implemented verified PDF, EML, and manifest exports.

Changes

AgentMail

  • Added guarded mailbox rename/delete with protections.
  • Added advanced draft support (Bcc, Reply-To, RFC headers).
  • Implemented PDF, EML, and manifest export with strict structural checks.
  • Added timeout classification and draft-append recovery.

Bridge / Frontend

  • Routed session workspace via io.agentmuse/workspaceRoot metadata.
  • Added audience/priority annotations to Inspector UI (McpInspectorPanel.tsx).

Documentation

  • Updated README.md and MCP docs.

Test plan

  • AgentMail tests (380 passed).
  • Clippy checks passing with warnings denied.
  • Bridge tests (447 unit, 12 OAuth integration).
  • Agent protocol/bindings (183 tests).
  • App API annotation regression test.
  • TypeScript, Biome, and Rust formatting checks.
  • Documented real-account Apple Mail send/disappearance check.

PR description generated by Agent

- Added guarded mailbox rename/delete with preview, message-count confirmation, special-use/descendant protection, and ambiguous-transport recovery in [lib.rs](/Users/weekendsuperhero/CODE/agent_update_jobs/agentmail-mcp/src/lib.rs:656).
- Added Bcc, Reply-To, reply/reply-all drafts, RFC threading headers, Apple Mail draft markers, and atomic RFC 8508 draft replacement. AgentMail still exposes no sending surface.
- Routed the active session workspace through trusted `io.agentmuse/workspaceRoot` metadata for direct and task calls to the in-process AgentMail backend in [handler.rs](/Users/weekendsuperhero/CODE/agent_update_jobs/bridge/src/handler.rs:634). File reads/writes remain workspace-confined.
- Added audience/priority annotations to AgentMail resources and propagated them through the API, generated bindings, and Inspector UI in [McpInspectorPanel.tsx](/Users/weekendsuperhero/CODE/agent_update_jobs/frontend/src/features/bridge/components/McpInspectorPanel.tsx:210).
- Added exact thread preview/confirmation and verified PDF + EML + manifest export in [tools_write.rs](/Users/weekendsuperhero/CODE/agent_update_jobs/agentmail-mcp/src/mcp/tools_write.rs:64). `recorded`/`submittable` are returned only after reopen, parse, hash, and structural checks, with explicit limitations and no legal-admissibility claim.
- Added timeout classification, idempotent draft-append recovery, bounded PDF presentation, private directories, and safer mailbox case handling.
- Updated [README.md](/Users/weekendsuperhero/CODE/agent_update_jobs/agentmail-mcp/README.md:412) and MCP documentation.

Verification passed:

- AgentMail: 380 tests passed; one explicit stress test ignored.
- Clippy with warnings denied.
- Bridge: 447 unit + 12 OAuth integration tests.
- Agent protocol/bindings: 183 tests.
- App API annotation regression test.
- TypeScript, Biome, and Rust formatting checks.

The Rust/async/PDF/React skill guidance informed the typed recovery paths, cancellation and size bounds, PDF reopen verification, and static Inspector rendering.

The only remaining acceptance item is the documented real-account Apple Mail send/disappearance check in [README.md](/Users/weekendsuperhero/CODE/agent_update_jobs/agentmail-mcp/README.md:666). I did not run it because it sends outward through a user account.
@agent-pr-updater agent-pr-updater Bot changed the title weekendsuperhero/simple polish feat: implement AgentMail end-to-end features and annotations Aug 23, 2026
@WeekendSuperhero WeekendSuperhero added the muse:review Request a Muse review round (re-add to re-run) label Aug 23, 2026
@github-actions github-actions Bot added muse:reviewing Muse review round in progress and removed muse:review Request a Muse review round (re-add to re-run) labels Aug 23, 2026
@github-actions

Copy link
Copy Markdown

🤖 Muse — Code Review · ✅ pass

Round 1 · reviewed edb6694 · 0 open · 0 resolved this round

Summary: The provided diff only shows the addition of the 'printpdf' dependency in Cargo.toml. No logic errors, code changes, or other issues are present in the provided context.

Re-run: add the muse:review label · force same-SHA re-run: muse:force

@github-actions github-actions Bot added the review:approved Muse code review: no blocking findings label Aug 23, 2026
@github-actions

Copy link
Copy Markdown

🤖 Muse — Test Coverage · ✅ pass

Round 1 · reviewed edb6694 · 0 open · 0 resolved this round

Summary: The provided diff only shows the addition of the printpdf dependency in Cargo.toml. Since there are no behavioral code changes in this snippet, no new tests are required.

Re-run: add the muse:review label · force same-SHA re-run: muse:force

@github-actions github-actions Bot added tests:sufficient Muse test review: coverage adequate for this diff security:flagged Muse security review: blocking findings open muse:error A Muse review agent failed — see workflow run and removed muse:error A Muse review agent failed — see workflow run muse:reviewing Muse review round in progress labels Aug 23, 2026
@WeekendSuperhero WeekendSuperhero added the muse:review Request a Muse review round (re-add to re-run) label Aug 23, 2026
@github-actions github-actions Bot added muse:reviewing Muse review round in progress and removed muse:review Request a Muse review round (re-add to re-run) labels Aug 23, 2026
@github-actions

Copy link
Copy Markdown

🤖 Muse — Security · ✅ pass

Round 2 · reviewed edb6694 · 0 open · 0 resolved this round

Summary: The provided diff only shows the addition of the printpdf dependency in Cargo.toml. No security vulnerabilities were identified in the visible changes.

Re-run: add the muse:review label · force same-SHA re-run: muse:force

@github-actions github-actions Bot added security:clear Muse security review: no blocking findings muse:approved All Muse review agents positive and removed security:flagged Muse security review: blocking findings open muse:reviewing Muse review round in progress labels Aug 23, 2026
@WeekendSuperhero
WeekendSuperhero merged commit a9aa434 into main Aug 23, 2026
25 checks passed
@WeekendSuperhero
WeekendSuperhero deleted the weekendsuperhero/simple-polish branch August 23, 2026 19:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

muse:approved All Muse review agents positive review:approved Muse code review: no blocking findings security:clear Muse security review: no blocking findings tests:sufficient Muse test review: coverage adequate for this diff

Development

Successfully merging this pull request may close these issues.

1 participant