- mas_core: P2-maximal parser with required_profile, generator, statute schema + semantic lint + defaults-only inheritance, exact-host discovery with typed failures and same-origin redirects, pure policy resolver - mas_conformance: vendored spec fixtures (drift-tested) + property and statute cases - mas CLI: parse / explain / discover / lint-statute / test - mas-gateway: generic mail -> MAS event -> HTTP (MTA pipe + webhook) - examples: static great-service.example statute, reference ticket service - docs/experiment-review.md: first-pass findings; live MTA test still open Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Assistant: claude-code Assistant-Model: opus Assistant-Process: 623586@bnt-lap001 Assistant-Session: 10b30928-5b3b-4c11-9934-5ecca07367d8
41 lines
2 KiB
Markdown
41 lines
2 KiB
Markdown
# mail-address-semantics
|
|
|
|
Mail Address Semantics is a voluntary convention for naming people, actors and functions, and for addressing resources, facets, and optional interaction preferences through ordinary email addresses while keeping classification, authority, authentication, equivalence, and delivery implementation explicit and external to the address syntax.
|
|
|
|
This repo holds the normative MAS v0.1 bundle (`mas-v0.1-spec/`) and a Python
|
|
reference experiment (see `INTENT.md` and `workplans/MAS-WP-0002-*`).
|
|
|
|
> Parsing is local and deterministic. Discovery is networked. Policy is pure. Delivery remains external.
|
|
|
|
## Layout
|
|
|
|
| Path | Role |
|
|
|------|------|
|
|
| `mas_core/` | `parser`, `model`, `generator`, `statute` (schema + semantic lint + inheritance), `discovery`, `policy` |
|
|
| `mas_conformance/` | Shared corpus: spec fixtures (vendored, drift-tested), property cases, statute cases |
|
|
| `mas_cli/` | `mas parse / explain / discover / lint-statute / test` |
|
|
| `mas_gateway/` | Generic inbound mail → MAS event → HTTP (`pipe` for MTAs, `webhook` for providers) |
|
|
| `examples/statute/` | Static `/.well-known/mas` for `great-service.example` + tiny server |
|
|
| `examples/ticket_service/` | Reference app proving create / correlate / closed / unknown |
|
|
| `docs/experiment-review.md` | Milestone 9 findings |
|
|
|
|
## Quick start
|
|
|
|
```bash
|
|
uv venv && uv pip install -e '.[test]'
|
|
.venv/bin/pytest # full suite, offline
|
|
.venv/bin/mas test # conformance corpus
|
|
.venv/bin/mas explain 'ticket!callback@great-service.example' \
|
|
--statute examples/statute/great-service.example/.well-known/mas
|
|
.venv/bin/mas lint-statute examples/statute/great-service.example/.well-known/mas
|
|
```
|
|
|
|
Local end-to-end run:
|
|
|
|
```bash
|
|
python examples/ticket_service/ticket_service.py --db /tmp/t.sqlite3 & # :8025
|
|
mas-gateway --statute examples/statute/great-service.example/.well-known/mas \
|
|
pipe --recipient 'ticket!callback@great-service.example' \
|
|
--app-url http://127.0.0.1:8025/mas-events < message.eml
|
|
curl -s http://127.0.0.1:8025/outbox
|
|
```
|