# CRM AppRelease `0.11.0`

This immutable CRM AppRelease activates the L1-owned record-files routes
against the neutral Runtime Files capability released by M1. All seven
capabilities published by `0.10.0` are preserved unchanged.

- App: `io.nexuscrm.sfcrm`
- semantic version: `0.11.0`
- AppReleaseDigest:
  `sha256:9a178818c96496d5148f53a9d0dd76e80d064e9ab5e12743f7507d184078b34a`
- MetadataBundleDigest:
  `sha256:ee6f67e3b7e630331e68b610227679fc1a1b46e4cbc2ff240dd16a2bcd7a749c`
- component count: `66`, exactly one per component in the source
  `salesforce-crm-standard/pack.json`
- source input revision: `dd447ba812c5e10ef42b76f4ac6353e62f618887`

The AppManifest adds exactly one L1 service-handler capability:

- `io.nexuscrm.sfcrm.record-files.v1` requires
  `runtime.files.authorized-content.v1`.

The sfcrm production command installs create, open, and delete as one
fail-closed capability and advertises it only with this release. Runtime owns
authorization, transaction and blob lifecycle; sfcrm continues to own the
Salesforce-compatible routes and wire behavior.

`app-package.json` is canonical and reproducible from the exact source inputs.
`publisher-attestation.json` binds the release tuple and exact source
provenance. `publisher-public-key.json` is verification material, not publisher
trust; Catalog's independent trust authority must approve that exact key before
import. The AppRelease contains no service image identity.

This artifact does not select an active AppInstallation, publish an AppService
image, switch traffic, or create a fallback. Those ownership changes remain
explicit M2/D3 activation gates.

Rebuild and verify:

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