# CRM AppRelease `0.18.0`

This immutable CRM AppRelease preserves the complete `0.17.0` metadata,
consumer requirements, sfcrm handler surface, and V1 Runtime Flow command
registration. It additionally publishes the neutral V2 registration selected
by Integration routes that require a durable identity-convergence dependency:

```text
provider webhook
  -> Integration
  -> IntegrationBindingView selects runtime.flow.execute / payload v2
  -> AcceptCommand
  -> Runtime Worker persists, waits for, and wakes the exact dependency
```

Both payload versions remain registered. Catalog selects one exact
`(commandKind, payloadFormatVersion)` from the immutable AppRelease and binds it
to an authorized Integration workload and exact Flow definition/version. The
V1 component identity and behavior are unchanged from `0.17.0`; publishing V2
does not silently migrate an existing route.

- App: `io.nexuscrm.sfcrm`
- semantic version: `0.18.0`
- AppReleaseDigest:
  `sha256:213901190b94d2a9541dc62ed2987a01016fa40095e25f26d3784d7861125d55`
- MetadataBundleDigest:
  `sha256:7a8313c7d5640ffe88c09a9ef37b5b3b556bb34bd76459d74ae052197626f8e1`
- component count: `70`
- sfcrm provided capability count: `11` (unchanged)
- source input revision: `f1fbcf97b341c18ebd0863fd6858db270ab90fb4`
- source tree digest:
  `sha256:6b06cf17d26832c23b7d5958f1cf8d4076d6eef4951bd1ef656fc259bf1b5400`
- contract module: `v0.2.21`

This release adds no RPC, Runtime executor, AppService route, provider effect,
Gateway, process-local fallback, or production activation. V2 payload handling
and dependency lifecycle remain generic L0 mechanisms; L1 publishes only the
product-owned registration. Non-atomic workflow-action ownership remains a
separate M2 journey.

`app-package.json` is canonical and reproducible from the exact source input.
`publisher-attestation.json` binds that package to its source revision.
`publisher-public-key.json` is verification material only; it does not create
publisher trust.

Rebuild and verify:

```bash
git worktree add /tmp/nexuscrm-app-packs-0.18.0-source \
  f1fbcf97b341c18ebd0863fd6858db270ab90fb4
cd tools/crm-app-release
GOWORK=off go test ./... -count=1
GOWORK=off go run . build \
  --pack-root /tmp/nexuscrm-app-packs-0.18.0-source/salesforce-crm-standard \
  --output /tmp/crm-app-package-0.18.0.json
cmp /tmp/crm-app-package-0.18.0.json \
  ../../releases/io.nexuscrm.sfcrm/0.18.0/app-package.json
GOWORK=off go run . verify \
  --package ../../releases/io.nexuscrm.sfcrm/0.18.0/app-package.json \
  --attestation ../../releases/io.nexuscrm.sfcrm/0.18.0/publisher-attestation.json \
  --public-key ../../releases/io.nexuscrm.sfcrm/0.18.0/publisher-public-key.json
```
