## monid-ai/monid — catalog-v0.0.4…pre-split-37

_21 commits._

### Features
- **Merge origin/main (32ba7a8): 9 new connectors + placeholder identities** (7696af2)
- **feat(scripts): local host loop — Deno KV store + webhook simulate/listen (W6)** (b84b97c)
- **feat(identity): declared endpoint/slug identity + ids.lock guard (W5)** (2d364f9)
- **Merge branch 'main' into add-resource-lifecycle-saperly** (47189e7)
- **feat(saperly): the resource-lifecycle proving connector — 17 endpoints + phone-number resource** (266a847)
- **feat(testing): resource reader seeds, resource unit runner, fixture res.headers** (5ab1e6d)
- **feat(compiler): compile resource docs, bindings, accrue, provider webhooks** (6287267)
- **feat(schema,engine): resource docs, endpoint bindings, accrue, stop outcomes** (e801b9b)

### Backend
- **revert(identity): endpoint: optional again — derivation is the default, ids.lock guards renames** (6a18dbf)
- **feat(cli),docs: resource catalog + reader seeds; chapters; versioning reconcile** (a19518a)

### Tests
- **test(saperly): condense fixtures — merge duplicate/subset chains, strict no-fixture replay** (c01a4f6)
- **test(engine): the resource machinery pinned against its codes** (eab2210)
- **test(saperly): the fixture matrix + resource-op suite (35 tests)** (109030f)

### Docs
- **docs(resources): W7 — primer rewrite, version bump, gates green** (94c3410)
- **docs(openspec): propose refine-resource-model — post-review resource refinements (D38-D47)** (51efa00)
- **docs(openspec): note main's independent async_since/headers bump in the versioning reconcile** (6a270e3)
- **docs(openspec): propose add-resource-lifecycle-saperly — resource standard + saperly connector** (cb096af)

### Chore
- **refactor(webhooks): positional scope, one route verdict, verify template (W4)** (e0f1d80)
- **refactor(resources): purpose-keyed resources: bindings with alias injection (W3)** (ae850df)
- **refactor(resources): reshape resource defs — usage rate card, lifecycle verbs, views (W2)** (75130f8)
- **refactor(usage): the estimate re-runs — accrue dies (D40); const-object enums (D38)** (3b4ef04)

_Recap by [Repo Wrapped](https://repowrapped.com/gh/monid-ai/monid?utm_source=github-action)._